/*
 * Copyright (c) 2025 HiSilicon (Shanghai) Technologies Co., Ltd.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef HY_S0603_CMOS_EX_H
#define HY_S0603_CMOS_EX_H

#include "ot_common_awb.h"
#include "ot_common_isp.h"
#include "ot_common_sns.h"

#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif

/* Piris attr */
static ot_isp_piris_attr g_piris = {
    0,   // bStepFNOTableChange
    1,   // bZeroIsMax
    94,  // u16TotalStep
    62,  // u16StepCount
    /* Step-F number mapping table. Must be from small to large. F1.0 is 1024 and F32.0 is 1 */
    { 30,  35,  40,  45,  50,  56,  61,  67,  73,  79,  85,  92,  98,  105, 112, 120, 127, 135, 143, 150, 158,
      166, 174, 183, 191, 200, 208, 217, 225, 234, 243, 252, 261, 270, 279, 289, 298, 307, 316, 325, 335, 344,
      353, 362, 372, 381, 390, 399, 408, 417, 426, 435, 444, 453, 462, 470, 478, 486, 493, 500, 506, 512 },
    OT_ISP_IRIS_F_NO_1_4,  // enMaxIrisFNOTarget
    OT_ISP_IRIS_F_NO_5_6,   // enMinIrisFNOTarget
    1,
    512,
    32
};

static const ot_isp_cmos_black_level g_cmos_blc = {
    TD_FALSE, /* user_black_level_en */
    {
        {1200, 1200, 1200, 1200},
        {1200, 1200, 1200, 1200},
        {1200, 1200, 1200, 1200},
        {1200, 1200, 1200, 1200},
    },   /* user_black_level */
    OT_ISP_BLACK_LEVEL_MODE_AUTO, /* ot_isp_black_level_mode */
    {
        {
            {0x444, 0x444, 0x444, 0x444},
            {0x444, 0x444, 0x444, 0x444},
            {0x444, 0x444, 0x444, 0x444},
            {0x444, 0x444, 0x444, 0x444},
        },
    }, /* manual_attr */
    {
        OT_ISP_DYNAMIC_PATTERN_RGB, /* ot_isp_black_level_dynamic_pattern */
        {0, 0, 3840, 20}, /* ob_area */
        0x0,    /* low_threshold */
        0xbb8,  /* high_threshold */
        {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0},    /* dynablc offset */
        0x0,    /* dynablc tolerance */
        0x0,    /* filter_strength */
        0x0,    /* separate_mode */
        {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024},
        0,
        /* calibration black level */
    }, /* dynamic_attr */
    {
        0,                            /* update mode 0 */
        {
            {0x444, 0x444, 0x444, 0x444}, /* black level */
            {0x444, 0x444, 0x444, 0x444}, /* black level */
            {0x444, 0x444, 0x444, 0x444}, /* black level */
            {0x444, 0x444, 0x444, 0x444}, /* black level */
        },
    },
    {
        {3840, 2180},
    },
};

static const ot_isp_cmos_black_level g_cmos_blc_wdr = {
    TD_FALSE, /* user_black_level_en */
    {
        {1200, 1200, 1200, 1200},
        {1200, 1200, 1200, 1200},
        {1200, 1200, 1200, 1200},
        {1200, 1200, 1200, 1200},
    },   /* user_black_level */
    OT_ISP_BLACK_LEVEL_MODE_AUTO, /* ot_isp_black_level_mode */
    {
        {
            {0x400, 0x400, 0x400, 0x400},
            {0x400, 0x400, 0x400, 0x400},
            {0x400, 0x400, 0x400, 0x400},
            {0x400, 0x400, 0x400, 0x400},
        },
    }, /* manual_attr */
    {
        OT_ISP_DYNAMIC_PATTERN_RGB, /* ot_isp_black_level_dynamic_pattern */
        {0, 0, 3840, 20}, /* ob_area */
        0x0,    /* low_threshold */
        0xbb8,  /* high_threshold */
        {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0},    /* dynablc offset */
        0x0,    /* dynablc tolerance */
        0x0,    /* filter_strength */
        0x0,    /* separate_mode */
        {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024},
        0,
        /* calibration black level */
    }, /* dynamic_attr */
    {
        0,                            /* update mode 0 */
        {
            {0x400, 0x400, 0x400, 0x400}, /* black level */
            {0x400, 0x400, 0x400, 0x400}, /* black level */
            {0x400, 0x400, 0x400, 0x400}, /* black level */
            {0x400, 0x400, 0x400, 0x400}, /* black level */
        },
    },
    {
        {3840, 2180},
    },
};

static const ot_isp_dp_dynamic_auto_attr g_cmos_dpc = {
    { 0, 0, 0, 152, 220, 220, 220, 220, 220, 220, 152, 152, 152, 152, 152, 152 }, /* strength[16] */
    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50 },                     /* blend_ratio[16] */
};


#ifdef CONFIG_OT_ISP_CR_SUPPORT
static const ot_isp_cr_attr g_cmos_ge = {
    1,   /* en */
    9,   /* slope */
    9,   /* sensi_slope */
    300, /* sensi_threshold */
    { 128, 128, 128, 128, 129, 129, 129, 129, 130, 130, 130, 130, 131, 131, 131, 131 }, /* strength */
    { 300, 300, 300, 300, 310, 310, 310, 310, 320, 320, 320, 320, 330, 330, 330, 330 }, /* threshold */
    { 1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048 } /* np_offset */
};

static const ot_isp_cr_attr g_cmos_ge_wdr = {
    0,   /* en */
    9,   /* slope */
    9,   /* sensi_slope */
    300, /* sensi_threshold */
    { 128, 128, 128, 128, 129, 129, 129, 129, 130, 130, 130, 130, 131, 131, 131, 131 }, /* strength */
    { 300, 300, 300, 300, 310, 310, 310, 310, 320, 320, 320, 320, 330, 330, 330, 330 }, /* threshold */
    { 1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048 } /* np_offset */
};
#endif

static const ot_isp_demosaic_attr g_cmos_demosaic = {
    1, /* en */
    OT_OP_MODE_AUTO, /* op_type */
    {
        48, /* nddm_strength */
        64, /* nddm_mf_detail_strength */
        0, /* nddm_hf_detail_strength */
        2, /* detail_smooth_range */
        0, /* color_noise_f_threshold */
        8, /* color_noise_f_strength */
        1, /* color_noise_y_threshold */
        10, /* color_noise_y_strength */
    },
    {
        /* nddm_strength */
        { 48, 48, 48, 54, 54, 54, 48, 40, 40, 48, 48, 48, 48, 48, 48, 48 },
        /* nddm_mf_detail_strength */
        { 82, 74, 68, 60, 54, 50, 44, 40, 40, 40, 40, 32, 16, 16, 16, 16 },
        /* nddm_hf_detail_strength */
        { 0, 0, 1, 2, 4, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 },
        /* detail_smooth_range */
        { 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 5, 7, 7, 7, 7 },
        /* color_noise_f_threshold */
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
        /* color_noise_f_strength */
        { 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 },
        /* color_noise_y_threshold */
        { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
        /* color_noise_y_strength */
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
    }
};

static const ot_isp_anti_false_color_attr g_cmos_anti_false_color = {
    1,                  /* en */
    OT_OP_MODE_AUTO,    /* op_type */
    { 8, 8 },           /* manual_attr */
    {
        { 20, 15, 12, 12, 10, 8, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 }, /* anti_false_color_threshold */
        { 15, 15, 12, 10,  8, 8, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 }, /* anti_false_color_strength */
    }
};

static const ot_isp_anti_false_color_attr g_cmos_anti_false_color_wdr = {
    1,                  /* en */
    OT_OP_MODE_AUTO,    /* op_type */
    { 8, 8 },           /* manual_attr */
    {
        { 25, 20, 15, 12, 10, 10, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 }, /* anti_false_color_threshold */
        { 20, 18, 15, 12, 10,  8, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 }, /* anti_false_color_strength */
    }
};

/* BAYER NR */
static ot_isp_noise_calibration g_cmos_noise_calibration = {
    {
        1621.0000000000, 0.0003682779, -0.0150903382, 0.0000000368, -0.0000816109, 0.0519085205,
        0.0003600083, -0.0016596481, 0.0000000619, -0.0000323338, 0.0041258741, 4900.0000000000, 0, 0, 0, 0,
    }
};

static const ot_isp_nr_attr g_cmos_bayer_nr = {
    1,      /* bEnable */
    0,      /* enOpType */
    1,      /* tnr_enable */
    0,      /* lsc_nr_enable */
    0,      /* lsc_ratio1 */
    1,      /* lsc_ratio2 */
    {
        85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
        85, 85, 85, 85, 85, 85, 90, 90, 90, 95, 95, 95, 100, 100, 100, 100, 100
    },   /* CoringRatio */

    /* snr_cfg */
    {
        {
            /* snr auto */
            {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255}, /* sfm_thresh */
            {1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, /* sfm0_mode */
            {
                {108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108},
                {108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108},
                {108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108},
                {108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108}
            },
            {13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13}, /* sfm0_ex_strength */
            {16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16}, /* sfm0_ext_detail_prot */
            {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, /* sfm0_normal_edge_str */
            {16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16}, /* sfm1_detail_prot */
            {32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32}, /* sfm1_coarstr */
            {128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128}, /* finestr */
            {50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50}, /* coring_wgt */
            {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} /* coring_mot_th */
        },

        {
            /* snr manual */
            255, /* sfm_thresh */
            1,   /* sfm0_mode */
            { 108, 108, 108, 108 }, /* snr_sfm0_coarstr */
            13, /* sfm0_ex_strength */
            16, /* sfm0_ext_detail_prot */
            0,  /* sfm0_normal_edge_str */
            16, /* sfm1_detail_prot */
            32, /* sfm1_coarstr */
            128, /* finestr */
            50, /* coring_wgt */
            0,  /* coring_mot_th */
        },
    },
    /* tnr_cfg */
    {
        {
            /* tnr auto */
            {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, /* md_mode */
            {0,  0,  0,  16, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32}, /* md_anti_flicker_str */
            {24, 24, 20, 20, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16},   /* md_static_ratio */
            {32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32},   /* md_static_finestr */
            {0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 60, 60, 60, 60, 60, 60}, /* tnr_tss */
            {128, 128, 128, 128, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255}, /* tnr_tfr */
            {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255}, /* tnr_tfs */
            {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, /* user_define_md */
            {0, 0, 0, 0, 0, 16, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0}, /* user_define_slope */
            {0, 0, 0, 0, 0, 90, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0}, /* user_define_dark_thresh */
            {16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16}, /* user_define_color_thresh */
            {26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26}, /* sfr_r */
            {32, 32, 32, 32, 32, 32, 32, 128, 128, 128, 80, 80, 80, 80, 80, 80}, /* sfr_g */
            {26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26}, /* sfr_b */
        },
        {
            0, /* md_mode */
            64, /* md_anti_flicker_str */
            32, /* md_static_ratio */
            32, /* md_static_finestr */
            0, /* tnr_tss */
            255, /* tnr_tfr */
            255, /* tnr_tfs */
            0, /* user_define_md */
            0, /* user_define_bright_thresh */
            90, /* user_define_dark_thresh */
            16, /* user_define_color_thresh */
            26, /* sfr_r */
            32, /* sfr_g */
            26, /* sfr_b */
        }
    },

    /* wdr_cfg */
    {
        {16, 16, 16, 16}, /* sfm0_wdr_frame_str */
        {16, 16, 16, 16}, /* sfm0_fusion_frame_str */
        16,
        16,
        {16, 16, 16, 16}, /* md_wdr_frame_str */
        {16, 16, 16, 16}, /* md_fusion_frame_str */
    }
};

static const ot_isp_ldci_attr g_cmos_ldci = {
    /* enable */
    1,
    /* gauss_lpf_sigma */
    36,
    /* ot_op_mode */
    0,

    /* ot_isp_ldci_manual_attr */
    {
        /* ot_isp_ldci_he_wgt_attr */
        {
            /* he_pos_wgt */
            {
                50, 80, 32
            },
            /* he_neg_wgt */
            {
                60, 80, 128
            }
        },

        /* blc_ctrl */
        20
    },

    /* ot_isp_ldci_auto_attr */
    {
        /* he_wgt[OT_ISP_AUTO_ISO_NUM] */
        {
            {{50, 80, 32}, {60, 80, 128}},
            {{45, 80, 16}, {45, 80, 128}},
            {{42, 70, 0}, {45, 80, 128}},
            {{40, 70, 0}, {45, 80, 0}},
            {{35, 70, 0}, {24, 72, 0}},
            {{32, 64, 0}, {12, 64, 0}},
            {{12, 24, 0}, {8, 54, 0}},
            {{8, 20, 0}, {6, 36, 0}},
            {{6, 12, 0}, {0, 8, 0}},
            {{0, 8, 0}, {0, 6, 0}},
            {{0, 6, 0}, {0, 2, 0}},
            {{0, 2, 0}, {0, 1, 0}},
            {{0, 1, 0}, {0, 1, 0}},
            {{0, 1, 0}, {0, 1, 0}},
            {{0, 1, 0}, {0, 1, 0}},
            {{0, 1, 0}, {0, 1, 0}}
        },

        /* blc_ctrl */
        { 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }
    },

    /* tpr_incr_coef */
    8,
    /* tpr_decr_coef */
    8
};

static const ot_isp_ldci_attr g_cmos_ldci_wdr = {
    /* enable */
    1,
    /* gauss_lpf_sigma */
    36,
    /* ot_op_mode */
    0,

    /* ot_isp_ldci_manual_attr */
    {
        /* ot_isp_ldci_he_wgt_attr */
        {
            /* he_pos_wgt */
            {
                16, 80, 20
            },
            /* he_neg_wgt */
            {
                32, 80, 180
            }
        },

        /* blc_ctrl */
        20
    },

    /* ot_isp_ldci_auto_attr */
    {
        /* he_wgt[OT_ISP_AUTO_ISO_NUM] */
        {
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}},
            {{32, 48, 128}, {32, 80, 200}}
        },

        /* blc_ctrl */
        { 20,  20,  20,   20, 20,  20,  20,  20,  20,  20,   20,  20,  20,  20,  20,  20 }
    },

    /* tpr_incr_coef */
    8,
    /* tpr_decr_coef */
    8
};

static const ot_isp_gamma_attr g_cmos_gamma = {

    1,
    {0,    13,   27,   40,   54,   68,   81,   95,   108,  121,  135,  150,  166,  180,  195,  210,  226,  242,  259,
     269,  281,  292,  303,  315,  327,  339,  352,  364,  376,  389,  402,  415,  425,  435,  446,  456,  467,  477,
     488,  499,  510,  521,  532,  543,  555,  566,  578,  591,  602,  613,  625,  636,  648,  659,  671,  683,  695,
     708,  721,  734,  748,  762,  777,  792,  809,  817,  826,  836,  845,  855,  865,  875,  885,  896,  906,  917,
     928,  939,  950,  961,  972,  983,  994,  1005, 1017, 1028, 1039, 1051, 1062, 1073, 1085, 1096, 1107, 1118, 1129,
     1140, 1151, 1161, 1172, 1182, 1193, 1203, 1213, 1223, 1234, 1244, 1254, 1264, 1274, 1284, 1295, 1305, 1315, 1325,
     1336, 1346, 1357, 1367, 1378, 1389, 1400, 1411, 1422, 1433, 1445, 1456, 1468, 1480, 1493, 1499, 1505, 1511, 1518,
     1524, 1531, 1537, 1544, 1551, 1558, 1564, 1571, 1578, 1585, 1592, 1599, 1607, 1614, 1621, 1628, 1635, 1643, 1650,
     1657, 1665, 1672, 1679, 1687, 1694, 1702, 1709, 1716, 1724, 1731, 1738, 1746, 1753, 1761, 1768, 1775, 1783, 1790,
     1797, 1804, 1811, 1819, 1826, 1833, 1840, 1847, 1854, 1861, 1867, 1874, 1881, 1888, 1894, 1901, 1907, 1914, 1920,
     1926, 1932, 1939, 1945, 1951, 1956, 1962, 1968, 1974, 1980, 1986, 1991, 1997, 2003, 2008, 2014, 2020, 2025, 2031,
     2036, 2042, 2047, 2052, 2058, 2063, 2068, 2074, 2079, 2084, 2089, 2094, 2099, 2105, 2110, 2115, 2120, 2125, 2130,
     2135, 2140, 2145, 2150, 2154, 2159, 2164, 2169, 2174, 2179, 2183, 2188, 2193, 2198, 2202, 2207, 2212, 2217, 2221,
     2226, 2231, 2235, 2240, 2244, 2249, 2254, 2258, 2263, 2268, 2272, 2277, 2281, 2286, 2290, 2295, 2299, 2304, 2308,
     2312, 2317, 2321, 2325, 2330, 2334, 2338, 2342, 2347, 2351, 2355, 2359, 2363, 2368, 2372, 2376, 2380, 2384, 2388,
     2392, 2396, 2400, 2404, 2408, 2412, 2416, 2420, 2424, 2428, 2432, 2436, 2439, 2443, 2447, 2451, 2455, 2459, 2463,
     2466, 2470, 2474, 2478, 2482, 2485, 2489, 2493, 2497, 2500, 2504, 2508, 2512, 2515, 2519, 2523, 2527, 2530, 2534,
     2538, 2541, 2545, 2548, 2552, 2556, 2559, 2563, 2566, 2570, 2574, 2577, 2581, 2584, 2588, 2591, 2594, 2598, 2601,
     2605, 2608, 2612, 2615, 2618, 2622, 2625, 2629, 2632, 2635, 2639, 2642, 2645, 2649, 2652, 2655, 2659, 2662, 2665,
     2668, 2672, 2675, 2678, 2681, 2685, 2688, 2691, 2694, 2698, 2701, 2704, 2707, 2710, 2714, 2717, 2720, 2723, 2727,
     2730, 2733, 2736, 2739, 2743, 2746, 2749, 2752, 2755, 2758, 2762, 2765, 2768, 2771, 2774, 2777, 2781, 2784, 2787,
     2790, 2793, 2796, 2800, 2803, 2806, 2809, 2812, 2815, 2818, 2821, 2824, 2827, 2831, 2834, 2837, 2840, 2843, 2846,
     2849, 2852, 2855, 2858, 2861, 2864, 2867, 2870, 2873, 2876, 2879, 2882, 2885, 2887, 2890, 2893, 2896, 2899, 2902,
     2905, 2908, 2910, 2913, 2916, 2919, 2922, 2924, 2927, 2930, 2933, 2936, 2938, 2941, 2944, 2946, 2949, 2952, 2954,
     2957, 2960, 2962, 2965, 2967, 2970, 2972, 2975, 2978, 2980, 2983, 2985, 2988, 2990, 2993, 2995, 2998, 3000, 3002,
     3005, 3007, 3010, 3012, 3015, 3017, 3019, 3022, 3024, 3026, 3029, 3031, 3034, 3036, 3038, 3041, 3043, 3045, 3048,
     3050, 3052, 3055, 3057, 3059, 3062, 3064, 3066, 3069, 3071, 3073, 3075, 3078, 3080, 3082, 3085, 3087, 3089, 3092,
     3094, 3096, 3098, 3101, 3103, 3105, 3107, 3110, 3112, 3114, 3116, 3119, 3121, 3123, 3125, 3128, 3130, 3132, 3134,
     3136, 3139, 3141, 3143, 3145, 3147, 3149, 3152, 3154, 3156, 3158, 3160, 3162, 3165, 3167, 3169, 3171, 3173, 3175,
     3177, 3179, 3182, 3184, 3186, 3188, 3190, 3192, 3194, 3196, 3198, 3201, 3203, 3205, 3207, 3209, 3211, 3213, 3215,
     3217, 3219, 3221, 3223, 3225, 3227, 3230, 3232, 3234, 3236, 3238, 3240, 3242, 3244, 3246, 3248, 3250, 3252, 3254,
     3256, 3258, 3260, 3262, 3264, 3266, 3268, 3270, 3272, 3274, 3276, 3278, 3280, 3282, 3283, 3285, 3287, 3289, 3291,
     3293, 3295, 3297, 3299, 3301, 3303, 3305, 3307, 3309, 3311, 3312, 3314, 3316, 3318, 3320, 3322, 3324, 3326, 3328,
     3330, 3332, 3334, 3335, 3337, 3339, 3341, 3343, 3345, 3347, 3349, 3351, 3353, 3355, 3356, 3358, 3360, 3362, 3364,
     3366, 3368, 3370, 3371, 3373, 3375, 3377, 3379, 3381, 3382, 3384, 3386, 3388, 3390, 3392, 3393, 3395, 3397, 3399,
     3401, 3403, 3404, 3406, 3408, 3410, 3412, 3413, 3415, 3417, 3419, 3421, 3423, 3424, 3426, 3428, 3430, 3432, 3434,
     3435, 3437, 3439, 3441, 3443, 3445, 3447, 3448, 3450, 3452, 3454, 3456, 3458, 3460, 3462, 3464, 3466, 3468, 3470,
     3472, 3474, 3475, 3477, 3479, 3481, 3483, 3486, 3488, 3490, 3492, 3494, 3496, 3498, 3500, 3502, 3504, 3506, 3508,
     3510, 3512, 3514, 3517, 3519, 3521, 3523, 3525, 3527, 3529, 3531, 3533, 3536, 3538, 3540, 3542, 3544, 3546, 3548,
     3550, 3553, 3555, 3557, 3559, 3561, 3563, 3565, 3568, 3570, 3572, 3574, 3576, 3578, 3580, 3582, 3585, 3587, 3589,
     3591, 3593, 3595, 3597, 3599, 3601, 3603, 3605, 3608, 3610, 3612, 3614, 3616, 3618, 3620, 3622, 3624, 3626, 3628,
     3630, 3632, 3634, 3636, 3638, 3640, 3642, 3645, 3647, 3649, 3651, 3653, 3655, 3657, 3659, 3661, 3663, 3665, 3667,
     3669, 3671, 3673, 3675, 3677, 3679, 3681, 3683, 3685, 3687, 3689, 3691, 3693, 3695, 3697, 3699, 3701, 3704, 3706,
     3708, 3710, 3712, 3714, 3716, 3718, 3720, 3722, 3724, 3726, 3728, 3730, 3732, 3734, 3736, 3738, 3740, 3742, 3744,
     3746, 3748, 3750, 3752, 3754, 3756, 3758, 3760, 3762, 3764, 3766, 3767, 3769, 3771, 3773, 3775, 3777, 3779, 3781,
     3783, 3785, 3787, 3789, 3791, 3793, 3795, 3797, 3799, 3801, 3803, 3804, 3806, 3808, 3810, 3812, 3814, 3816, 3818,
     3820, 3822, 3824, 3826, 3828, 3830, 3832, 3834, 3836, 3837, 3839, 3841, 3843, 3845, 3847, 3849, 3851, 3853, 3855,
     3857, 3858, 3860, 3862, 3864, 3866, 3868, 3870, 3872, 3873, 3875, 3877, 3879, 3881, 3883, 3885, 3887, 3888, 3890,
     3892, 3894, 3896, 3898, 3900, 3902, 3904, 3905, 3907, 3909, 3911, 3913, 3915, 3917, 3919, 3920, 3922, 3924, 3926,
     3928, 3930, 3932, 3934, 3935, 3937, 3939, 3941, 3943, 3945, 3947, 3949, 3950, 3952, 3954, 3955, 3957, 3959, 3961,
     3963, 3965, 3967, 3969, 3971, 3972, 3974, 3976, 3977, 3979, 3981, 3983, 3985, 3987, 3989, 3991, 3993, 3994, 3996,
     3998, 4000, 4001, 4003, 4005, 4006, 4008, 4010, 4012, 4014, 4016, 4018, 4020, 4022, 4023, 4025, 4027, 4028, 4030,
     4032, 4034, 4036, 4037, 4039, 4041, 4042, 4044, 4046, 4048, 4050, 4052, 4054, 4056, 4058, 4059, 4061, 4063, 4064,
     4066, 4068, 4070, 4072, 4073, 4075, 4077, 4078, 4080, 4082, 4084, 4086, 4087, 4089, 4091, 4092, 4094, 4095
    },
    3,
};

static const ot_isp_gamma_attr g_cmos_gamma_wdr = {
    1,
    {0,    5,    10,   15,   20,   25,   30,   35,   40,   44,   49,   54,   59,   64,   69,   74,   79,   84,   89,
     94,   99,   103,  108,  113,  118,  123,  128,  133,  138,  142,  147,  152,  157,  162,  167,  171,  176,  181,
     186,  191,  196,  200,  205,  210,  215,  220,  224,  229,  234,  239,  244,  249,  253,  258,  263,  268,  273,
     278,  283,  287,  292,  297,  302,  307,  312,  317,  321,  326,  331,  336,  341,  346,  351,  356,  361,  366,
     371,  376,  381,  386,  391,  396,  401,  406,  411,  416,  421,  426,  431,  436,  441,  446,  451,  456,  461,
     466,  472,  477,  482,  487,  492,  498,  503,  508,  513,  519,  524,  529,  535,  540,  545,  551,  556,  561,
     567,  572,  578,  583,  589,  594,  600,  605,  611,  616,  622,  628,  633,  639,  645,  650,  656,  662,  667,
     673,  679,  685,  691,  697,  702,  708,  714,  720,  726,  732,  738,  744,  750,  756,  762,  768,  774,  780,
     787,  793,  799,  805,  811,  817,  824,  830,  836,  842,  849,  855,  861,  867,  874,  880,  886,  893,  899,
     905,  912,  918,  925,  931,  937,  944,  950,  957,  963,  970,  976,  982,  989,  995,  1002, 1008, 1015, 1021,
     1028, 1034, 1041, 1047, 1054, 1060, 1067, 1074, 1080, 1087, 1093, 1100, 1106, 1113, 1119, 1126, 1132, 1139, 1145,
     1152, 1159, 1165, 1172, 1178, 1185, 1191, 1198, 1204, 1211, 1217, 1224, 1230, 1237, 1244, 1250, 1257, 1263, 1270,
     1276, 1283, 1289, 1295, 1302, 1308, 1315, 1321, 1328, 1334, 1341, 1347, 1353, 1360, 1366, 1373, 1379, 1385, 1392,
     1398, 1404, 1411, 1417, 1423, 1430, 1436, 1442, 1448, 1455, 1461, 1467, 1473, 1479, 1486, 1492, 1498, 1505, 1511,
     1517, 1524, 1530, 1536, 1543, 1549, 1555, 1562, 1568, 1575, 1581, 1587, 1594, 1600, 1607, 1613, 1620, 1626, 1632,
     1639, 1645, 1652, 1658, 1665, 1671, 1678, 1684, 1690, 1697, 1703, 1710, 1716, 1723, 1729, 1736, 1742, 1749, 1755,
     1761, 1768, 1774, 1781, 1787, 1794, 1800, 1806, 1813, 1819, 1826, 1832, 1838, 1845, 1851, 1857, 1864, 1870, 1876,
     1883, 1889, 1895, 1902, 1908, 1914, 1920, 1927, 1933, 1939, 1945, 1952, 1958, 1964, 1970, 1976, 1982, 1988, 1995,
     2001, 2007, 2013, 2019, 2025, 2031, 2037, 2043, 2049, 2055, 2060, 2066, 2072, 2078, 2084, 2090, 2095, 2101, 2107,
     2113, 2118, 2124, 2130, 2135, 2141, 2147, 2152, 2158, 2163, 2169, 2174, 2180, 2185, 2190, 2196, 2201, 2206, 2212,
     2217, 2222, 2227, 2232, 2238, 2243, 2248, 2253, 2258, 2263, 2268, 2273, 2278, 2283, 2287, 2292, 2297, 2302, 2307,
     2312, 2316, 2321, 2326, 2330, 2335, 2340, 2344, 2349, 2354, 2358, 2363, 2367, 2372, 2376, 2381, 2385, 2390, 2394,
     2398, 2403, 2407, 2411, 2416, 2420, 2424, 2429, 2433, 2437, 2441, 2446, 2450, 2454, 2458, 2462, 2467, 2471, 2475,
     2479, 2483, 2487, 2491, 2495, 2499, 2503, 2507, 2511, 2515, 2519, 2523, 2527, 2531, 2535, 2539, 2543, 2547, 2551,
     2555, 2558, 2562, 2566, 2570, 2574, 2578, 2582, 2585, 2589, 2593, 2597, 2601, 2604, 2608, 2612, 2616, 2619, 2623,
     2627, 2631, 2634, 2638, 2642, 2646, 2649, 2653, 2657, 2660, 2664, 2668, 2671, 2675, 2679, 2683, 2686, 2690, 2694,
     2697, 2701, 2705, 2708, 2712, 2716, 2719, 2723, 2727, 2730, 2734, 2738, 2741, 2745, 2749, 2752, 2756, 2760, 2764,
     2768, 2771, 2775, 2779, 2782, 2786, 2789, 2793, 2796, 2800, 2804, 2807, 2811, 2814, 2818, 2821, 2825, 2828, 2832,
     2835, 2839, 2842, 2846, 2849, 2853, 2856, 2860, 2863, 2867, 2870, 2873, 2877, 2880, 2884, 2887, 2891, 2894, 2897,
     2901, 2904, 2908, 2911, 2914, 2918, 2921, 2924, 2928, 2931, 2934, 2938, 2941, 2944, 2948, 2951, 2954, 2958, 2961,
     2964, 2967, 2971, 2974, 2977, 2981, 2984, 2987, 2990, 2994, 2997, 3000, 3003, 3006, 3010, 3013, 3016, 3019, 3023,
     3026, 3029, 3032, 3035, 3038, 3042, 3045, 3048, 3051, 3054, 3057, 3061, 3064, 3067, 3070, 3073, 3076, 3079, 3082,
     3086, 3089, 3092, 3095, 3098, 3101, 3104, 3107, 3110, 3113, 3116, 3119, 3122, 3125, 3129, 3132, 3135, 3138, 3141,
     3144, 3147, 3150, 3153, 3156, 3159, 3162, 3165, 3168, 3171, 3174, 3177, 3180, 3183, 3185, 3188, 3191, 3194, 3197,
     3200, 3203, 3206, 3209, 3212, 3215, 3218, 3221, 3224, 3227, 3229, 3232, 3235, 3238, 3241, 3244, 3247, 3250, 3252,
     3255, 3258, 3261, 3264, 3267, 3270, 3272, 3275, 3278, 3281, 3284, 3287, 3289, 3292, 3295, 3298, 3301, 3303, 3306,
     3309, 3312, 3315, 3317, 3320, 3323, 3326, 3328, 3331, 3334, 3337, 3339, 3342, 3345, 3348, 3350, 3353, 3356, 3359,
     3361, 3364, 3367, 3370, 3372, 3375, 3378, 3380, 3383, 3386, 3388, 3391, 3394, 3396, 3399, 3402, 3405, 3407, 3410,
     3413, 3415, 3418, 3420, 3423, 3426, 3428, 3431, 3434, 3436, 3439, 3442, 3444, 3447, 3449, 3452, 3455, 3457, 3460,
     3462, 3465, 3468, 3470, 3473, 3475, 3478, 3481, 3483, 3486, 3488, 3491, 3493, 3496, 3498, 3501, 3504, 3506, 3509,
     3511, 3514, 3516, 3519, 3521, 3524, 3526, 3529, 3531, 3534, 3536, 3539, 3541, 3544, 3546, 3549, 3551, 3554, 3556,
     3559, 3561, 3564, 3566, 3569, 3571, 3574, 3576, 3579, 3581, 3584, 3586, 3588, 3591, 3593, 3596, 3598, 3601, 3603,
     3606, 3608, 3610, 3613, 3615, 3618, 3620, 3622, 3625, 3627, 3630, 3632, 3634, 3637, 3639, 3642, 3644, 3646, 3649,
     3651, 3654, 3656, 3658, 3661, 3663, 3665, 3668, 3670, 3673, 3675, 3677, 3680, 3682, 3684, 3687, 3689, 3691, 3694,
     3696, 3698, 3701, 3703, 3705, 3708, 3710, 3712, 3714, 3717, 3719, 3721, 3724, 3726, 3728, 3731, 3733, 3735, 3737,
     3740, 3742, 3744, 3747, 3749, 3751, 3753, 3756, 3758, 3760, 3762, 3765, 3767, 3769, 3771, 3774, 3776, 3778, 3780,
     3783, 3785, 3787, 3789, 3792, 3794, 3796, 3798, 3801, 3803, 3805, 3807, 3809, 3812, 3814, 3816, 3818, 3820, 3823,
     3825, 3827, 3829, 3831, 3834, 3836, 3838, 3840, 3842, 3844, 3847, 3849, 3851, 3853, 3855, 3857, 3860, 3862, 3864,
     3866, 3868, 3870, 3873, 3875, 3877, 3879, 3881, 3883, 3885, 3888, 3890, 3892, 3894, 3896, 3898, 3900, 3902, 3905,
     3907, 3909, 3911, 3913, 3915, 3917, 3919, 3921, 3924, 3926, 3928, 3930, 3932, 3934, 3936, 3938, 3940, 3942, 3944,
     3946, 3949, 3951, 3953, 3955, 3957, 3959, 3961, 3963, 3965, 3967, 3969, 3971, 3973, 3975, 3977, 3979, 3981, 3984,
     3986, 3988, 3990, 3992, 3994, 3996, 3998, 4000, 4002, 4004, 4006, 4008, 4010, 4012, 4014, 4016, 4018, 4020, 4022,
     4024, 4026, 4028, 4030, 4032, 4034, 4036, 4038, 4040, 4042, 4044, 4046, 4048, 4050, 4052, 4054, 4056, 4058, 4060,
     4062, 4064, 4066, 4068, 4070, 4072, 4074, 4075, 4077, 4079, 4081, 4083, 4085, 4087, 4089, 4091, 4093, 4095
    },
    3,
};
#ifdef CONFIG_OT_ISP_PREGAMMA_SUPPORT
static const ot_isp_pregamma_attr g_cmos_pregamma = {
    0,
    {
        0,       12417,   21619,   29902,   37641,   44997,   52063,   58896,   65536,   72012,   78344,   84552,
        90647,   96641,   102544,  108363,  114105,  119775,  125379,  130921,  136406,  141835,  147213,  152542,
        157825,  163065,  168262,  173420,  178540,  183623,  188671,  193686,  198668,  203619,  208541,  213433,
        218298,  223136,  227947,  232734,  237496,  242234,  246949,  251642,  256313,  260962,  265592,  270201,
        274790,  279360,  283912,  288446,  292962,  297460,  301942,  306407,  310855,  315288,  319706,  324108,
        328495,  332868,  337226,  341571,  345901,  350218,  354522,  358813,  363091,  367356,  371609,  375850,
        380079,  384296,  388502,  392696,  396880,  401052,  405213,  409364,  413504,  417634,  421754,  425863,
        429963,  434053,  438134,  442205,  446266,  450319,  454362,  458396,  462422,  466438,  470446,  474446,
        478437,  482420,  486395,  490361,  494320,  498270,  502213,  506148,  510076,  513996,  517908,  521813,
        525711,  529601,  533485,  537361,  541231,  545093,  548949,  552798,  556640,  560475,  564305,  568127,
        571943,  575753,  579557,  583354,  587145,  590930,  594709,  598482,  602249,  606010,  609765,  613515,
        617259,  620997,  624729,  628456,  632178,  635894,  639604,  643309,  647009,  650704,  654393,  658077,
        661756,  665430,  669099,  672763,  676421,  680075,  683724,  687368,  691008,  694642,  698272,  701897,
        705517,  709133,  712744,  716351,  719953,  723550,  727143,  730732,  734316,  737896,  741471,  745043,
        748610,  752172,  755731,  759285,  762835,  766381,  769923,  773461,  776995,  780525,  784050,  787572,
        791090,  794604,  798114,  801620,  805123,  808622,  812116,  815608,  819095,  822579,  826059,  829535,
        833008,  836477,  839942,  843404,  846862,  850317,  853768,  857216,  860661,  864102,  867539,  870973,
        874404,  877831,  881255,  884676,  888093,  891507,  894918,  898326,  901730,  905131,  908529,  911924,
        915316,  918704,  922090,  925472,  928851,  932227,  935600,  938970,  942337,  945701,  949062,  952420,
        955775,  959127,  962477,  965823,  969166,  972507,  975845,  979179,  982511,  985840,  989167,  992490,
        995811,  999129,  1002444, 1005757, 1009067, 1012374, 1015678, 1018980, 1022279, 1025575, 1028869, 1032160,
        1035448, 1038734, 1042017, 1045298, 1048575
    }
};
#endif

static const ot_isp_sharpen_attr g_cmos_yuv_sharpen = {
    /* en */
    1,
    /* motion_en */
    0,
    /* motion_threshold0 */
    4,
    /* motion_threshold1 */
    10,
    /* motion_gain0 */
    0,
    /* motion_gain1 */
    255,
    /* skin_umin */
    99,
    /* skin_vmin */
    134,
    /* skin_umax */
    127,
    /* skin_vmax */
    128,
    /* op_type */
    OT_OP_MODE_AUTO,
    /* detail_map */
    OT_ISP_SHARPEN_NORMAL,
    /* manual para */
    {
        /* luma_wgt[OT_ISP_SHARPEN_LUMA_NUM] */
        {
            31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
            31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31
        },
        /* texture_strength[OT_ISP_SHARPEN_GAIN_NUM] */
        {
            250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270,
            270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150
        },
        /* edge_strength[OT_ISP_SHARPEN_GAIN_NUM] */
        {
            120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210,
            210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120
        },
        /* texture_freq */
        190,
        /* edge_freq */
        128,
        /* over_shoot */
        65,
        /* under_shoot */
        75,
        /* motion_texture_strength[OT_ISP_SHARPEN_GAIN_NUM] */
        {
            250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270,
            270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150
        },
        /* motion_edge_strength[OT_ISP_SHARPEN_GAIN_NUM] */
        {
            120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210,
            210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120
        },
        /* motion_texture_freq */
        190,
        /* motion_edge_freq */
        128,
        /* motion_over_shoot */
        65,
        /* motion_under_shoot */
        75,
        /* u8shoot_sup_str */
        7,
        /* u8shoot_sup_adj */
        9,
        /* detail_ctrl */
        128,
        /* detail_ctrl_threshold */
        180,
        /* edge_filt_strength */
        60,
        /* edge_filt_max_cap */
        18,
        /* r_gain */
        20,
        /* g_gain */
        32,
        /* b_gain */
        20,
        /* skin_gain */
        25,
        /* max_sharp_gain */
        40,
    },
    /* auto para */
    {
        /* luma_wgt[OT_ISP_SHARPEN_GAIN_NUM][OT_ISP_AUTO_ISO_NUM] */
        {
            { 31,  31,  28,  27,  27,  25,  25,  23,  23,  23,  23,  19,  19,  19,  19,  19 },
            { 31,  31,  28,  27,  27,  25,  25,  23,  23,  23,  23,  20,  20,  20,  20,  20 },
            { 31,  31,  28,  27,  27,  25,  25,  23,  23,  23,  23,  20,  20,  20,  20,  20 },
            { 31,  31,  28,  27,  27,  25,  25,  23,  23,  23,  23,  21,  21,  21,  21,  21 },
            { 31,  31,  28,  27,  27,  25,  25,  23,  23,  23,  23,  22,  22,  22,  22,  22 },
            { 31,  31,  28,  27,  27,  25,  25,  23,  23,  23,  23,  22,  22,  22,  22,  22 },
            { 31,  31,  28,  27,  27,  25,  25,  24,  24,  24,  24,  23,  23,  23,  23,  23 },
            { 31,  31,  28,  27,  27,  25,  25,  24,  24,  24,  24,  24,  24,  24,  24,  24 },
            { 31,  31,  28,  27,  27,  26,  26,  25,  25,  25,  25,  25,  25,  25,  25,  25 },
            { 31,  31,  28,  27,  27,  27,  27,  26,  26,  26,  26,  26,  26,  26,  26,  26 },
            { 31,  31,  28,  28,  28,  28,  28,  27,  27,  27,  27,  27,  27,  27,  27,  27 },
            { 31,  31,  28,  28,  28,  29,  29,  28,  28,  28,  28,  28,  28,  28,  28,  28 },
            { 31,  31,  29,  29,  29,  30,  30,  29,  29,  29,  29,  29,  29,  29,  29,  29 },
            { 31,  31,  30,  30,  30,  30,  30,  30,  30,  30,  30,  30,  30,  30,  30,  30 },
            { 31,  31,  30,  30,  30,  31,  31,  30,  30,  30,  30,  30,  30,  30,  30,  30 },
            { 31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 30,  30,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 28,  29,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 26,  28,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 },
            { 25,  27,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31,  31 }
        },
        /* texture_strength[OT_ISP_SHARPEN_GAIN_NUM][OT_ISP_AUTO_ISO_NUM] */
        {
            { 88,  88,  88,  82,  82,  82,  75,   75,  75, 68,  68,  68,  68,  68,  68,  68  },
            { 95,  95,  95,  88,  88,  88,  80,   85,  81, 73,  73,  73,  73,  73,  73,  73  },
            { 104, 104, 104, 96,  96,  96,  88,   95,  89, 80,  80,  80,  80,  80,  80,  80  },
            { 116, 116, 116, 107, 107, 107, 98,  108, 101, 89,  89,  89,  89,  89,  89,  89  },
            { 127, 127, 127, 118, 118, 118, 108, 121, 114, 98,  98,  98,  98,  98,  98,  98  },
            { 139, 139, 139, 128, 128, 128, 118, 136, 130, 107, 107, 107, 107, 107, 107, 107 },
            { 150, 150, 150, 138, 138, 138, 127, 151, 145, 115, 115, 115, 115, 115, 115, 115 },
            { 156, 156, 156, 144, 144, 144, 132, 163, 157, 120, 120, 120, 120, 120, 120, 120 },
            { 160, 160, 160, 148, 148, 148, 135, 171, 164, 123, 123, 123, 123, 123, 123, 123 },
            { 163, 163, 163, 150, 150, 150, 138, 177, 169, 125, 125, 125, 125, 125, 125, 125 },
            { 165, 165, 165, 152, 152, 152, 140, 181, 171, 127, 127, 127, 127, 127, 127, 127 },
            { 166, 166, 166, 154, 154, 154, 141, 183, 173, 128, 128, 128, 128, 128, 128, 128 },
            { 166, 166, 166, 154, 154, 154, 141, 184, 173, 128, 128, 128, 128, 128, 128, 128 },
            { 165, 165, 165, 152, 152, 152, 140, 182, 173, 127, 127, 127, 127, 127, 127, 127 },
            { 164, 164, 164, 151, 151, 151, 139, 180, 171, 126, 126, 126, 126, 126, 126, 126 },
            { 161, 161, 161, 149, 149, 149, 136, 176, 168, 124, 124, 124, 124, 124, 124, 124 },
            { 157, 157, 157, 145, 145, 145, 133, 171, 165, 121, 121, 121, 121, 121, 121, 121 },
            { 152, 152, 152, 140, 140, 140, 129, 165, 162, 117, 117, 117, 117, 117, 117, 117 },
            { 147, 147, 147, 136, 136, 136, 124, 159, 157, 113, 113, 113, 113, 113, 113, 113 },
            { 140, 140, 140, 130, 130, 130, 119, 151, 152, 108, 108, 108, 108, 108, 108, 108 },
            { 133, 133, 133, 122, 122, 122, 112, 142, 145, 102, 102, 102, 102, 102, 102, 102 },
            { 125, 125, 125, 115, 115, 115, 106, 133, 137, 96,  96,  96,  96,  96,  96,  96  },
            { 117, 117, 117, 108, 108, 108, 99,  123, 129, 90,  90,  90,  90,  90,  90,  90  },
            { 111, 111, 111, 102, 102, 102, 94,  113, 120, 85,  85,  85,  85,  85,  85,  85  },
            { 103, 103, 103, 95,  95,  95,  87,  103, 111, 79,  79,  79,  79,  79,  79,  79  },
            { 95,  95,  95,  88,  88,  88,  80,   93, 102, 73,  73,  73,  73,  73,  73,  73  },
            { 87,  87,  87,  80,  80,  80,  74,   83,  93, 67,  67,  67,  67,  67,  67,  67  },
            { 78,  78,  78,  72,  72,  72,  66,   73,  84, 60,  60,  60,  60,  60,  60,  60  },
            { 70,  70,  70,  65,  65,  65,  59,   65,  73, 54,  54,  54,  54,  54,  54,  54  },
            { 62,  62,  62,  58,  58,  58,  53,   56,  62, 48,  48,  48,  48,  48,  48,  48  },
            { 57,  57,  57,  53,  53,  53,  48,   49,  51, 44,  44,  44,  44,  44,  44,  44  },
            { 52,  52,  52,  48,  48,  48,  44,   44,  44, 40,  40,  40,  40,  40,  40,  40  }
        },
        /* edge_strength */
        {
            { 183, 183, 183, 183, 183, 203, 203, 203, 223, 223, 223, 223, 223, 223, 223, 223 },
            { 186, 186, 186, 186, 186, 207, 207, 207, 228, 228, 228, 228, 228, 228, 228, 228 },
            { 191, 191, 191, 191, 191, 212, 212, 212, 233, 233, 233, 233, 233, 233, 233, 233 },
            { 197, 197, 197, 197, 197, 219, 219, 219, 241, 241, 241, 241, 241, 241, 241, 241 },
            { 203, 203, 203, 203, 203, 226, 226, 226, 249, 249, 249, 249, 249, 249, 249, 249 },
            { 209, 209, 209, 209, 209, 232, 232, 232, 255, 255, 255, 255, 255, 255, 255, 255 },
            { 214, 214, 214, 214, 214, 238, 238, 238, 262, 262, 262, 262, 262, 262, 262, 262 },
            { 219, 219, 219, 219, 219, 243, 243, 243, 267, 267, 267, 267, 267, 267, 267, 267 },
            { 221, 221, 221, 221, 221, 246, 246, 246, 271, 271, 271, 271, 271, 271, 271, 271 },
            { 224, 224, 224, 224, 224, 249, 249, 249, 274, 274, 274, 274, 274, 274, 274, 274 },
            { 226, 226, 226, 226, 226, 251, 251, 251, 276, 276, 276, 276, 276, 276, 276, 276 },
            { 228, 228, 228, 228, 228, 253, 253, 253, 278, 278, 278, 278, 278, 278, 278, 278 },
            { 229, 229, 229, 229, 229, 254, 254, 254, 279, 279, 279, 279, 279, 279, 279, 279 },
            { 229, 229, 229, 229, 229, 254, 254, 254, 279, 279, 279, 279, 279, 279, 279, 279 },
            { 229, 229, 229, 229, 229, 254, 254, 254, 279, 279, 279, 279, 279, 279, 279, 279 },
            { 228, 228, 228, 228, 228, 253, 253, 253, 278, 278, 278, 278, 278, 278, 278, 278 },
            { 226, 226, 226, 226, 226, 251, 251, 251, 276, 276, 276, 276, 276, 276, 276, 276 },
            { 224, 224, 224, 224, 224, 249, 249, 249, 274, 274, 274, 274, 274, 274, 274, 274 },
            { 221, 221, 221, 221, 221, 246, 246, 246, 271, 271, 271, 271, 271, 271, 271, 271 },
            { 219, 219, 219, 219, 219, 243, 243, 243, 267, 267, 267, 267, 267, 267, 267, 267 },
            { 215, 215, 215, 215, 215, 239, 239, 239, 263, 263, 263, 263, 263, 263, 263, 263 },
            { 211, 211, 211, 211, 211, 234, 234, 234, 257, 257, 257, 257, 257, 257, 257, 257 },
            { 205, 205, 205, 205, 205, 228, 228, 228, 251, 251, 251, 251, 251, 251, 251, 251 },
            { 199, 199, 199, 199, 199, 221, 221, 221, 243, 243, 243, 243, 243, 243, 243, 243 },
            { 191, 191, 191, 191, 191, 212, 212, 212, 233, 233, 233, 233, 233, 233, 233, 233 },
            { 182, 182, 182, 182, 182, 202, 202, 202, 222, 222, 222, 222, 222, 222, 222, 222 },
            { 171, 171, 171, 171, 171, 190, 190, 190, 209, 209, 209, 209, 209, 209, 209, 209 },
            { 159, 159, 159, 159, 159, 177, 177, 177, 195, 195, 195, 195, 195, 195, 195, 195 },
            { 149, 149, 149, 149, 149, 165, 165, 165, 182, 182, 182, 182, 182, 182, 182, 182 },
            { 139, 139, 139, 139, 139, 154, 154, 154, 169, 169, 169, 169, 169, 169, 169, 169 },
            { 130, 130, 130, 130, 130, 144, 144, 144, 158, 158, 158, 158, 158, 158, 158, 158 },
            { 123, 123, 123, 123, 123, 137, 137, 137, 151, 151, 151, 151, 151, 151, 151, 151 }
        },
        /* texture_freq[OT_ISP_AUTO_ISO_NUM] */
        { 200, 200, 190, 180, 180, 170, 160, 150, 130, 100, 80, 80, 80, 80, 80, 80 },
        /* edge_freq[OT_ISP_AUTO_ISO_NUM] */
        { 128, 128, 120, 120, 110, 110, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100 },
        /* over_shoot[OT_ISP_AUTO_ISO_NUM] */
        { 50,  50,  50,  50,  50,  50,  50,  45,  40,  40,  40,  40,  40,  40,  40,  40 },
        /* under_shoot[OT_ISP_AUTO_ISO_NUM] */
        { 60,  60,  60,  60,  55,  55,  50,  50,  50,  50,  50,  50,  50,  50,  50,  50 },
        /* motion_texture_strength[OT_ISP_SHARPEN_GAIN_NUM][OT_ISP_AUTO_ISO_NUM] */
        {
            { 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149 },
            { 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
            { 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161 },
            { 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170 },
            { 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180 },
            { 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190 },
            { 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202 },
            { 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213 },
            { 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224 },
            { 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, 235, 235 },
            { 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246 },
            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
            { 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262 },
            { 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268 },
            { 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272 },
            { 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273 },
            { 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272 },
            { 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269, 269 },
            { 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264 },
            { 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 257 },
            { 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, 249 },
            { 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240 },
            { 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230 },
            { 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219 },
            { 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209, 209 },
            { 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198 },
            { 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188 },
            { 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178 },
            { 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169 },
            { 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161 },
            { 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155 },
            { 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 }
        },
        /* motion_edge_strength     */
        {
            { 195, 195, 195, 195, 195, 195, 400, 440, 500, 475, 475, 475, 475, 475, 475, 475 },
            { 210, 210, 200, 200, 200, 200, 400, 440, 500, 485, 485, 485, 485, 485, 485, 485 },
            { 235, 235, 220, 220, 220, 220, 400, 440, 500, 495, 495, 495, 495, 495, 495, 495 },
            { 260, 260, 230, 230, 230, 230, 400, 440, 500, 500, 500, 500, 500, 500, 500, 500 },
            { 295, 295, 240, 240, 240, 240, 400, 440, 500, 510, 510, 510, 510, 510, 510, 510 },
            { 320, 320, 250, 250, 250, 250, 400, 440, 500, 520, 520, 520, 520, 520, 520, 520 },
            { 340, 340, 260, 260, 260, 260, 420, 460, 540, 530, 530, 530, 530, 530, 530, 530 },
            { 350, 350, 270, 270, 270, 270, 420, 460, 540, 540, 540, 540, 540, 540, 540, 540 },
            { 360, 360, 280, 280, 280, 280, 420, 460, 540, 545, 545, 545, 545, 545, 545, 545 },
            { 360, 360, 280, 280, 280, 280, 420, 460, 540, 550, 550, 550, 550, 550, 550, 550 },
            { 355, 355, 285, 285, 285, 285, 420, 460, 540, 560, 560, 560, 560, 560, 560, 560 },
            { 345, 345, 290, 290, 290, 290, 420, 460, 540, 565, 565, 565, 565, 565, 565, 565 },
            { 335, 335, 290, 290, 290, 290, 420, 460, 540, 570, 570, 570, 570, 570, 570, 570 },
            { 330, 330, 295, 295, 295, 295, 430, 470, 550, 575, 575, 575, 575, 575, 575, 575 },
            { 325, 325, 295, 295, 295, 295, 430, 470, 550, 580, 580, 580, 580, 580, 580, 580 },
            { 320, 320, 295, 295, 295, 295, 440, 470, 550, 575, 575, 575, 575, 575, 575, 575 },
            { 315, 315, 295, 295, 295, 295, 440, 470, 550, 570, 570, 570, 570, 570, 570, 570 },
            { 310, 310, 295, 295, 295, 295, 450, 480, 580, 565, 565, 565, 565, 565, 565, 565 },
            { 305, 305, 295, 295, 295, 295, 460, 500, 580, 560, 560, 560, 560, 560, 560, 560 },
            { 295, 295, 290, 290, 290, 290, 460, 500, 580, 555, 555, 555, 555, 555, 555, 555 },
            { 285, 285, 285, 285, 285, 285, 460, 500, 580, 550, 550, 550, 550, 550, 550, 550 },
            { 280, 280, 280, 280, 280, 280, 460, 500, 580, 540, 540, 540, 540, 540, 540, 540 },
            { 275, 275, 275, 275, 275, 275, 460, 500, 580, 535, 535, 535, 535, 535, 535, 535 },
            { 265, 265, 265, 265, 265, 265, 460, 500, 580, 530, 530, 530, 530, 530, 530, 530 },
            { 250, 250, 250, 250, 250, 250, 460, 500, 580, 520, 520, 520, 520, 520, 520, 520 },
            { 240, 240, 240, 240, 240, 240, 470, 500, 580, 515, 515, 515, 515, 515, 515, 515 },
            { 220, 220, 220, 220, 220, 220, 470, 500, 580, 510, 510, 510, 510, 510, 510, 510 },
            { 200, 200, 200, 200, 200, 200, 470, 500, 580, 500, 500, 500, 500, 500, 500, 500 },
            { 180, 180, 180, 180, 180, 180, 480, 500, 580, 495, 495, 495, 495, 495, 495, 495 },
            { 160, 160, 160, 160, 160, 160, 480, 500, 580, 485, 485, 485, 485, 485, 485, 485 },
            { 140, 140, 140, 140, 140, 140, 480, 500, 580, 480, 480, 480, 480, 480, 480, 480 },
            { 125, 125, 125, 125, 125, 125, 480, 500, 580, 470, 470, 470, 470, 470, 470, 470 }
        },
        /* motion_texture_freq[OT_ISP_AUTO_ISO_NUM] */
        { 200, 190, 190, 170, 170, 170, 160, 140, 128, 128, 128, 100, 100, 100, 100, 100 },
        /* motion_edge_freq[OT_ISP_AUTO_ISO_NUM] */
        { 128, 100, 100, 100, 100, 100, 100, 100, 100, 100, 96, 96, 96, 96, 96, 96 },
        /* motion_over_shoot[OT_ISP_AUTO_ISO_NUM] */
        { 65, 65, 62, 64, 64, 64, 56, 52, 50, 50, 30, 10, 10, 10, 10, 10 },
        /* motion_under_shoot[OT_ISP_AUTO_ISO_NUM] */
        { 65, 65, 62, 64, 64, 64, 54, 50, 50, 30, 20, 20, 15, 15, 15, 15 },
        /* shoot_sup_strength[OT_ISP_AUTO_ISO_NUM] */
        { 7, 7, 6, 6, 5, 5, 4, 4, 3, 0, 0, 0, 0, 0, 0, 0 },
        /* shoot_sup_adj[OT_ISP_AUTO_ISO_NUM] */
        { 9, 9, 8, 8, 7, 7, 6, 6, 5, 0, 0, 0, 0, 0, 0, 0 },
        /* detail_ctrl[OT_ISP_AUTO_ISO_NUM] */
        { 128, 128, 128, 128, 128, 128, 128, 128, 120, 120, 120, 120, 120, 120, 120, 120 },
        /* detail_ctrl_threshold[OT_ISP_AUTO_ISO_NUM] */
        { 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160 },
        /* edge_filt_strength[OT_ISP_AUTO_ISO_NUM] */
        { 58, 58, 58, 58, 60, 60, 60, 52, 50, 50, 50, 50, 50, 50, 50, 50 },
        /* edge_filt_max_cap */
        { 18, 18, 18, 18, 18, 18, 20, 18, 16, 15, 15, 15, 15, 15, 15, 15 },
        /* r_gain[OT_ISP_AUTO_ISO_NUM] */
        { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
        /* g_gain[OT_ISP_AUTO_ISO_NUM] */
        { 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32 },
        /* b_gain[OT_ISP_AUTO_ISO_NUM] */
        { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
        /* skin_gain[OT_ISP_AUTO_ISO_NUM] */
        { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
        /* max_sharp_gain[OT_ISP_AUTO_ISO_NUM] */
        { 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 },
    },
};

static ot_isp_awb_ccm g_awb_ccm = {
    4,
    {
        {
            6175,
            { 440, 32967, 15, 32868, 408, 32820, 32769, 32992, 481 },
        },
        {
            4990,
            { 443, 32969, 14, 32876, 407, 32811, 32769, 33012, 501 },
        },
        {
            3865,
            { 458, 32977, 7,  32853, 389, 32816, 24, 33018, 482 },
        },
        {
            2450,
            { 427, 32931, 32776, 32897, 401, 32784, 4, 33168, 652 },
        },
    },
};

static ot_isp_awb_ccm g_awb_ccm_wdr = {
    4,
    {
        {
            6175,
            { 440, 32967, 15, 32852, 424, 32852, 11, 33014, 491 },
        },
        {
            4990,
            { 443, 32969, 14, 32860, 423, 32843, 13, 33044, 519 },
        },
        {
            3865,
            { 450, 32973, 11, 32857, 407, 32830, 18, 33031, 501 },
        },
        {
            2450,
            { 458, 32977, 7,  32853, 389, 32816, 24, 33018, 482 },
        },
    },
};

static ot_isp_awb_agc_table g_awb_agc_table = {
    /* bvalid */
    1,

    /* 1,  2,  4,  8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768 */
    /* saturation */
    { 0x80, 0x76, 0x70, 0x6C, 0x69, 0x66, 0x5A, 0x4E, 0x44, 0x40, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 }
};

static ot_isp_awb_agc_table g_awb_agc_table_wdr = {
    /* bvalid */
    1,
    /* saturation */
    { 90, 90, 85, 85, 85, 82, 80, 80, 75, 75, 70, 70, 70, 70, 65, 60}
};

static const ot_isp_wdr_fs_attr g_cmos_wdr = {
    /* ot_isp_wdr_merge_mode */
    OT_ISP_MERGE_FUSION_MODE,

    /* ot_isp_wdr_combine_attr */
    {
        /* motion_comp */
        1,

        /* forcelong_coarse */
        1,

        /* short_thr */
        4032,

        /* long_thr */
        3008,

        /* force_long */
        1,

        /* force_long_low_threshold */
        500,

        /* force_long_hig_threshold */
        700,

        /* ot_isp_fswdr_mdt_attr */
        {
            /* short_expo_chk */
            0,

            /* short_check_thd */
            0x8,

            /* md_ref_flicker */
            1,

            /* mdt_still_thd */
            0x14,

            /* mdt_full_threshold */
            254,

            /* mdt_long_blend */
            0x0,

            /* ot_op_mode motion_comp */
            OT_OP_MODE_AUTO,

            /* ot_isp_fswdr_manual_attr */
            {
                /* md_thr_low_gain */
                64, 64
            },

            /* ot_isp_fswdr_auto_attr */
            {
                /* md_thr_low_gain[10][16] */
                {
                    { 45, 45, 45, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 45, 45, 45, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 24, 24, 24, 45, 64,  96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 24, 24, 24, 45, 64,  96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 45, 45, 45, 45, 64, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 45, 45, 45, 45, 64, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 64, 64, 64, 64, 128, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 128, 128, 128, 128, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 128, 128, 128, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }
                },

                /* md_thr_hig_gain[10][16] */
                {
                    { 64, 64, 64, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 64, 64, 64, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 45, 45, 45, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 45, 45, 45, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 64, 64, 64, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 64, 64, 64, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 128, 128, 128, 128, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                    { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
                },
            },
        },

        /* forcelong_coarse_low_threshold */
        3520,

        /* forcelong_coarse_high_threshold */
        4160,
    },

    /* ot_isp_fusion_attr */
    {
        { 15420, 12000, 12000, 12000 },
    },
};

static const ot_isp_dehaze_attr g_cmos_dehaze = {
    /* enable */
    0,
    /* user_lut_enable */
    0,
    /* dehaze_lut */
    {
        0, 9, 13, 17, 21, 25, 29, 33, 37, 42, 46, 50, 54, 58, 62, 67, 71, 75, 79, 83, 87, 91,
        95, 99, 102, 106, 110, 114, 117, 121, 124, 128, 131, 134, 137, 141, 144, 147, 150,
        153, 156, 159, 162, 165, 168, 170, 173, 176, 178, 181, 184, 186, 189, 191, 193, 196,
        198, 200, 203, 205, 207, 209, 211, 213, 215, 217, 219, 221, 222, 224, 226, 228, 229,
        231, 232, 234, 235, 237, 238, 240, 241, 242, 243, 244, 246, 247, 248, 249, 249, 250,
        251, 252, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
        255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 253, 253, 252, 251, 251, 250, 249,
        249, 248, 247, 247, 246, 245, 244, 244, 243, 242, 241, 240, 239, 238, 237, 236, 235,
        233, 232, 231, 230, 229, 227, 226, 225, 223, 222, 221, 219, 218, 216, 215, 213, 212,
        210, 209, 208, 206, 205, 203, 201, 200, 198, 197, 195, 193, 192, 190, 188, 187, 185,
        183, 181, 180, 178, 176, 174, 172, 170, 169, 167, 165, 163, 161, 159, 157, 155, 153,
        151, 149, 147, 145, 143, 140, 138, 136, 134, 132, 130, 128, 125, 123, 121, 119, 116,
        114, 112, 110, 107, 105, 103, 100, 98, 96, 93, 91, 89, 86, 84, 81, 79, 77, 74, 72, 69,
        67, 64, 62, 59, 57, 54, 52, 49, 47, 44, 42, 39, 37, 34, 31, 29, 26, 24, 21, 18, 16, 13, 11,
        8, 5, 3, 0
    },
    /* op_type */
    0,
    /* auto_strength */
    {
        128
    },
    /* manual_strength */
    {
        128
    },
    /* tmprflt_incr_coef */
    8,
    /* tmprflt_decr_coef */
    64,
};

static const ot_isp_dehaze_attr g_cmos_dehaze_wdr = {
    /* enable */
    1,
    /* user_lut_enable */
    1,
    /* dehaze_lut */
    {
        0, 9, 13, 17, 21, 25, 29, 33, 37, 42, 46, 50, 54, 58, 62, 67, 71, 75, 79, 83, 87, 91,
        95, 99, 102, 106, 110, 114, 117, 121, 124, 128, 131, 134, 137, 141, 144, 147, 150,
        153, 156, 159, 162, 165, 168, 170, 173, 176, 178, 181, 184, 186, 189, 191, 193, 196,
        198, 200, 203, 205, 207, 209, 211, 213, 215, 217, 219, 221, 222, 224, 226, 228, 229,
        231, 232, 234, 235, 237, 238, 240, 241, 242, 243, 244, 246, 247, 248, 249, 249, 250,
        251, 252, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
        255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 253, 253, 252, 251, 251, 250, 249,
        249, 248, 247, 247, 246, 245, 244, 244, 243, 242, 241, 240, 239, 238, 237, 236, 235,
        233, 232, 231, 230, 229, 227, 226, 225, 223, 222, 221, 219, 218, 216, 215, 213, 212,
        210, 209, 208, 206, 205, 203, 201, 200, 198, 197, 195, 193, 192, 190, 188, 187, 185,
        183, 181, 180, 178, 176, 174, 172, 170, 169, 167, 165, 163, 161, 159, 157, 155, 153,
        151, 149, 147, 145, 143, 140, 138, 136, 134, 132, 130, 128, 125, 123, 121, 119, 116,
        114, 112, 110, 107, 105, 103, 100, 98, 96, 93, 91, 89, 86, 84, 81, 79, 77, 74, 72, 69,
        67, 64, 62, 59, 57, 54, 52, 49, 47, 44, 42, 39, 37, 34, 31, 29, 26, 24, 21, 18, 16, 13, 11,
        8, 5, 3, 0
    },
    /* op_type */
    0,
    /* auto_strength */
    {
        100
    },
    /* manual_strength */
    {
        128
    },
    /* tmprflt_incr_coef */
    8,
    /* tmprflt_decr_coef */
    64,
};

static const ot_isp_drc_attr g_cmos_drc = {
    /* enable */
    0,
    /* curve_select */
    OT_ISP_DRC_CURVE_ASYMMETRY,
    /* purple_reduction_strength */
    35,
    /* bright_gain_limit */
    10,
    /* bright_gain_limit_step */
    8,
    /* dark_gain_limit_luma */
    0,
    /* dark_gain_limit_chroma */
    0,
    /* contrast_ctrl */
    8,
    /* rim_reduction_strength */
    32,
    /* rim_reduction_threshold */
    30,
    /* color_correction_lut[OT_ISP_DRC_CC_NODE_NUM] */
    {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
     1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024},
    /* tone_mapping_value[OT_ISP_DRC_TM_NODE_NUM] */
    {8,     8,     16,    24,    31,    39,    48,    56,    65,    75,    85,    95,    106,   118,   130,   143,
     156,   170,   185,   201,   218,   235,   254,   274,   294,   316,   339,   364,   390,   417,   446,   477,
     509,   543,   579,   617,   658,   701,   746,   794,   844,   898,   955,   1015,  1078,  1145,  1216,  1291,
     1370,  1454,  1543,  1637,  1736,  1841,  1952,  2069,  2194,  2325,  2465,  2612,  2767,  2932,  3106,  3290,
     3485,  3691,  3909,  4140,  4384,  4641,  4914,  5202,  5507,  5830,  6171,  6531,  6913,  7316,  7742,  8193,
     8669,  9173,  9705,  10268, 10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635,
     19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451,
     26959, 27473, 27995, 28524, 29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706,
     36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008,
     45424, 45842, 46265, 46691, 47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113,
     52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429,
     58697, 58967, 59238, 59510, 59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877,
     63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234},
    /* spatial_filter_coef */
    1,
    /* range_filter_coef */
    2,
    /* detail_adjust_coef */
    8,
    /* local_mixing_bright[OT_ISP_DRC_LMIX_NODE_NUM] */
    {15, 17, 18, 20, 22, 23, 25, 26, 28, 29, 31, 32, 34, 36, 37, 39, 40, 42,
     43, 45, 46, 48, 49, 51, 53, 54, 56, 57, 59, 61, 62, 63, 64},
    /* local_mixing_dark[OT_ISP_DRC_LMIX_NODE_NUM] */
    {15, 17, 18, 20, 22, 23, 25, 26, 28, 29, 31, 32, 34, 36, 37, 39, 40, 42,
     43, 45, 46, 48, 49, 51, 53, 54, 56, 57, 59, 61, 62, 63, 64},
    /* filter_coef_x[OT_ISP_DRC_FLTX_NODE_NUM] */
    {3, 3, 3},
    /* filter_low_threshold_x[OT_ISP_DRC_FLTX_NODE_NUM] */
    {2, 2, 2},
    /* filter_high_threshold_x[OT_ISP_DRC_FLTX_NODE_NUM] */
    {5, 5, 5},
    /* detail_adjust_coef_x */
    0,
    /* local_mixing_bright_x[OT_ISP_DRC_LMIX_NODE_NUM] */
    {0,  4,  8,  12, 16, 20, 25, 29, 33, 41, 49, 56, 64, 72, 80, 88, 96, 93,
     90, 87, 84, 80, 77, 74, 71, 68, 65, 62, 60, 57, 54, 51, 48},
    /* local_mixing_dark_x[OT_ISP_DRC_LMIX_NODE_NUM] */
    {0,  4,  8,  12, 16, 20, 25, 29, 33, 41, 49, 56, 64, 72, 80, 88, 96, 93,
     90, 87, 84, 80, 77, 74, 71, 68, 65, 62, 60, 57, 54, 51, 48},
    /* blend_luma_max */
    200,
    /* blend_luma_bright_min */
    0,
    /* blend_luma_bright_threshold */
    60,
    /* blend_luma_bright_slope */
    12,
    /* blend_luma_dark_min */
    0,
    /* blend_luma_dark_threshold */
    40,
    /* blend_luma_dark_slope */
    12,
    /* blend_detail_max */
    255,
    /* blend_detail_bright_min */
    0,
    /* blend_detail_bright_threshold */
    20,
    /* blend_detail_bright_slope */
    12,
    /* blend_detail_dark_min */
    0,
    /* blend_detail_dark_threshold */
    20,
    /* blend_detail_dark_slope */
    12,
    /* detail_adjust_coef_blend */
    0,
    /* low_saturation_color_ctrl */
    0,
    /* high_saturation_color_ctrl */
    15,
    /* color_correction_ctrl */
    1,
    /* op_type */
    OT_OP_MODE_AUTO,
    /* manual_attr */
    {
        /* manual_strength */
        1023,
    },
    /* auto_attr */
    {
        /* auto_strength */
        512,
        /* auto_strength_max */
        1023,
        /* auto_strength_min */
        512,
    },
    /* asymmetry_curve */
    {
        /* asymmetry */
        6,
        /* second_pole */
        200,
        /* stretch */
        40,
        /* compress */
        170
    }
};

static const ot_isp_crb_attr g_cmos_crb = {
    /* CRB */
    0,
    /* Y */
    0,
    /* auto para */
    {
        { 900, 890, 880, 870, 860, 850, 845, 840, 835, 830 },
        { 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024 },
    },
    /* manual para */
    {
        1024, 1024,
    },
};

#ifdef CONFIG_OT_ISP_CA_SUPPORT
static const ot_isp_ca_attr g_cmos_ca = {
    /* CA */
    1,
    0,
    {
        {
            36,   58,   81,   96,   111,  123,  136,  147,  158,  170,  182,  194,  207,  217,  228,  243,  259,  274,
            290,  303,  317,  331,  345,  357,  369,  382,  396,  408,  420,  432,  444,  456,  468,  480,  492,  503,
            515,  524,  534,  545,  556,  565,  574,  585,  597,  605,  614,  623,  632,  640,  648,  657,  666,  673,
            681,  689,  697,  703,  709,  716,  723,  728,  734,  741,  748,  753,  758,  764,  771,  775,  780,  784,
            788,  794,  800,  804,  808,  811,  815,  818,  822,  825,  829,  833,  837,  839,  841,  844,  848,  851,
            854,  856,  858,  861,  864,  866,  868,  869,  871,  874,  878,  879,  881,  883,  885,  887,  890,  891,
            893,  895,  897,  898,  900,  901,  903,  904,  906,  907,  909,  910,  912,  913,  915,  916,  918,  919,
            921,  922,  924,  925,  926,  927,  929,  930,  931,  932,  934,  935,  936,  937,  938,  939,  941,  942,
            943,  944,  945,  946,  947,  948,  949,  950,  951,  951,  952,  953,  954,  955,  956,  957,  958,  959,
            961,  961,  962,  963,  964,  965,  966,  967,  968,  968,  969,  969,  970,  970,  971,  972,  973,  973,
            974,  975,  976,  976,  977,  978,  979,  979,  980,  980,  981,  982,  983,  983,  984,  984,  985,  985,
            986,  987,  988,  988,  989,  989,  990,  990,  991,  991,  992,  992,  993,  994,  995,  995,  996,  996,
            997,  997,  998,  998,  999,  999,  1000, 1000, 1001, 1002, 1004, 1004, 1005, 1005, 1006, 1006, 1007, 1008,
            1009, 1009, 1010, 1010, 1011, 1011, 1012, 1013, 1014, 1015, 1016, 1016, 1017, 1018, 1019, 1019, 1020, 1021,
            1022, 1023, 1024, 1024
        },
        /* ISO */
        { 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1000, 950, 900, 900, 800, 800, 800, 800, 800 },
    },
    {
        {
            56,  58,  60,  62,  64,  66,  68,  69,  71,  72,  74,  75,  77,  78,  79,  81,  82,  83,  85,  86,  87,
            88,  89,  91,  93,  94,  96,  98,  99,  101, 102, 104, 105, 106, 108, 109, 110, 111, 112, 113, 115, 116,
            117, 118, 119, 119, 120, 121, 122, 123, 124, 125, 125, 126, 127, 128, 128, 129, 130, 131, 131, 132, 133,
            134, 135, 136, 136, 137, 138, 139, 141, 142, 143, 144, 145, 146, 147, 149, 150, 151, 152, 153, 155, 156,
            157, 158, 159, 161, 162, 163, 164, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
            180, 181, 182, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 193, 194, 195, 196, 197, 197, 198, 198,
            198, 199, 199, 198, 198, 198, 198, 197, 196, 196, 195, 194, 193, 192, 191, 190, 189, 187, 186, 185, 184,
            183, 181, 180, 179, 178, 177, 175, 174, 173, 172, 170, 169, 168, 167, 165, 164, 163, 161, 160, 159, 157,
            156, 155, 153, 152, 151, 149, 148, 146, 145, 144, 142, 141, 139, 138, 136, 135, 133, 132, 130, 129, 127,
            126, 124, 123, 121, 119, 118, 116, 115, 114, 113, 111, 110, 110, 109, 108, 108, 108, 108, 108, 109, 110,
            111, 112, 113, 114, 115, 116, 118, 119, 121, 122, 124, 125, 127, 128, 130, 131, 133, 134, 136, 137, 139,
            140, 142, 143, 145, 146, 148, 149, 151, 152, 154, 155, 157, 158, 160, 161, 163, 164, 166, 167, 169, 170,
            172, 173, 175, 176
        },
        {
            232, 228, 225, 222, 219, 216, 214, 211, 208, 205, 202, 200, 197, 194, 192, 189, 186, 184, 181, 179, 176,
            174, 171, 169, 166, 163, 161, 158, 156, 153, 151, 148, 146, 143, 141, 139, 136, 134, 132, 130, 128, 125,
            123, 121, 119, 117, 115, 112, 110, 108, 106, 104, 101, 99,  97,  95,  92,  90,  88,  86,  83,  81,  79,
            77,  75,  73,  71,  69,  67,  65,  64,  62,  61,  60,  59,  58,  57,  56,  55,  55,  54,  54,  54,  53,
            53,  52,  52,  52,  51,  51,  50,  50,  50,  49,  49,  49,  48,  48,  48,  47,  47,  47,  46,  46,  46,
            45,  45,  45,  44,  44,  44,  43,  43,  43,  42,  42,  42,  42,  41,  41,  41,  41,  40,  40,  40,  40,
            40,  40,  40,  40,  40,  40,  40,  40,  41,  41,  41,  41,  42,  42,  42,  43,  43,  44,  44,  44,  45,
            45,  46,  46,  46,  47,  47,  48,  48,  49,  49,  49,  50,  50,  51,  51,  52,  52,  53,  53,  54,  54,
            55,  55,  56,  56,  57,  57,  58,  58,  59,  60,  60,  61,  61,  62,  62,  63,  64,  64,  65,  66,  67,
            67,  68,  69,  70,  71,  72,  73,  75,  76,  78,  79,  81,  82,  84,  86,  87,  89,  91,  92,  94,  96,
            97,  99,  100, 102, 103, 105, 106, 108, 109, 111, 112, 114, 115, 117, 118, 119, 121, 122, 124, 125, 127,
            129, 130, 132, 133, 135, 136, 138, 139, 141, 143, 144, 146, 147, 149, 151, 152, 154, 155, 157, 159, 160,
            162, 164, 166, 167
        },
        {
            92,  91,  89,  88,  87,  86,  85,  84,  83,  82,  81,  80,  79,  78,  77,  76,  75,  75,  74,  73,  72,
            72,  72,  72,  73,  74,  76,  77,  78,  79,  80,  81,  82,  83,  84,  85,  85,  86,  87,  87,  88,  88,
            88,  88,  89,  89,  89,  89,  89,  89,  88,  88,  88,  88,  87,  87,  87,  87,  87,  86,  86,  86,  87,
            87,  87,  88,  88,  89,  90,  91,  92,  93,  94,  95,  96,  97,  99,  100, 101, 102, 103, 105, 106, 107,
            108, 109, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130,
            131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 147, 148, 149, 150, 151, 152,
            153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 166, 167, 168, 169, 170, 171, 172,
            172, 173, 174, 175, 176, 176, 177, 178, 179, 180, 181, 181, 182, 183, 184, 185, 185, 186, 187, 188, 189,
            190, 190, 191, 192, 193, 194, 194, 195, 196, 197, 198, 199, 200, 200, 201, 202, 203, 204, 205, 206, 207,
            208, 208, 209, 210, 211, 212, 213, 214, 215, 215, 216, 217, 217, 218, 218, 219, 219, 219, 219, 219, 219,
            219, 218, 218, 217, 216, 215, 215, 214, 213, 212, 211, 210, 209, 208, 207, 206, 205, 204, 203, 202, 201,
            200, 199, 198, 197, 196, 195, 195, 194, 193, 192, 191, 190, 189, 188, 187, 186, 185, 184, 183, 182, 181,
            180, 179, 178, 176
        },
    },
};
#endif
static const ot_isp_cmos_lsc g_cmos_lsc = {
    /* cmos_lsc_attr */
    {
        /* en */
        1,
        /* mesh_strength */
        4096,
        /* blend_ratio */
        256,
        /* bnr_lsc_auto_en */
        0
    },
    /* cmos_lsc_lut */
    {
        /* mesh_scale */
        1,
        /* x_grid_width */
        {60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60},
        /* y_grid_width */
        {33, 33, 33, 33, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34},
        /* lsc_gain_lut */
        {
            {
                /* r_gain: */
                {
                    745, 673, 608, 561, 519, 484, 452, 428, 408, 387, 371, 357, 347, 338, 334, 328, 328,
                    328, 332, 337, 348, 356, 367, 382, 399, 425, 449, 479, 515, 557, 605, 665, 719, 716,
                    660, 599, 550, 508, 474, 446, 420, 399, 380, 363, 350, 342, 333, 326, 323, 322, 322,
                    325, 332, 338, 349, 360, 374, 392, 414, 439, 470, 505, 545, 595, 650, 704, 701, 640,
                    580, 536, 495, 464, 433, 409, 388, 370, 355, 343, 333, 324, 317, 313, 312, 312, 317,
                    322, 329, 340, 350, 366, 382, 403, 429, 458, 491, 533, 578, 630, 684, 676, 626, 569,
                    521, 485, 451, 424, 400, 380, 361, 345, 334, 324, 316, 309, 306, 304, 305, 307, 313,
                    320, 332, 340, 356, 373, 395, 417, 448, 478, 518, 563, 614, 668, 663, 608, 557, 510,
                    473, 440, 412, 389, 371, 352, 338, 326, 316, 307, 301, 298, 296, 296, 298, 305, 311,
                    322, 332, 347, 363, 384, 410, 436, 467, 508, 546, 599, 647, 647, 595, 541, 498, 465,
                    430, 403, 381, 362, 346, 332, 319, 308, 300, 294, 290, 288, 289, 290, 296, 302, 313,
                    325, 339, 356, 375, 398, 427, 456, 493, 536, 588, 640, 633, 580, 533, 488, 452, 424,
                    397, 374, 355, 338, 324, 313, 301, 295, 288, 283, 281, 281, 283, 288, 296, 305, 317,
                    332, 348, 368, 392, 417, 449, 485, 524, 574, 630, 619, 567, 519, 482, 446, 415, 389,
                    368, 348, 333, 317, 307, 297, 288, 281, 276, 275, 274, 277, 282, 289, 299, 310, 325,
                    342, 361, 383, 410, 439, 474, 515, 565, 621, 608, 561, 513, 471, 438, 409, 384, 362,
                    345, 327, 313, 301, 291, 283, 276, 271, 269, 268, 270, 276, 284, 293, 305, 320, 336,
                    356, 377, 402, 431, 467, 507, 552, 605, 597, 552, 507, 466, 433, 403, 379, 357, 339,
                    323, 308, 297, 287, 279, 272, 267, 264, 264, 266, 271, 281, 288, 300, 315, 331, 349,
                    371, 397, 426, 462, 499, 545, 597, 591, 543, 498, 461, 428, 400, 373, 352, 336, 318,
                    305, 293, 283, 275, 268, 263, 261, 261, 262, 268, 275, 285, 296, 310, 327, 345, 368,
                    393, 420, 455, 492, 539, 591, 584, 539, 493, 456, 425, 396, 371, 350, 330, 315, 302,
                    290, 280, 272, 264, 261, 259, 260, 261, 265, 273, 283, 295, 308, 323, 343, 363, 389,
                    416, 450, 488, 533, 578, 582, 536, 489, 452, 422, 394, 368, 348, 328, 313, 299, 287,
                    277, 268, 262, 259, 259, 259, 260, 263, 269, 281, 291, 305, 320, 338, 359, 384, 413,
                    446, 485, 528, 571, 574, 534, 489, 451, 419, 392, 367, 345, 327, 313, 298, 285, 276,
                    267, 261, 258, 257, 257, 260, 262, 269, 280, 291, 304, 317, 336, 357, 381, 410, 443,
                    481, 521, 565, 574, 533, 489, 450, 416, 388, 366, 344, 325, 310, 296, 285, 275, 266,
                    260, 257, 257, 258, 259, 261, 268, 278, 290, 302, 317, 335, 356, 381, 407, 439, 477,
                    519, 563, 571, 533, 486, 448, 416, 389, 365, 344, 324, 309, 295, 284, 274, 266, 259,
                    256, 256, 257, 259, 261, 268, 278, 290, 302, 316, 334, 356, 381, 408, 438, 474, 518,
                    561, 571, 533, 486, 449, 416, 388, 366, 344, 325, 309, 296, 285, 274, 266, 259, 256,
                    256, 256, 259, 261, 268, 279, 289, 302, 317, 334, 355, 380, 408, 437, 473, 516, 559,
                    574, 531, 488, 451, 419, 389, 366, 344, 326, 309, 297, 285, 275, 266, 260, 256, 256,
                    256, 259, 262, 269, 280, 291, 303, 317, 336, 356, 381, 408, 438, 474, 518, 559, 574,
                    533, 489, 452, 419, 393, 366, 345, 327, 311, 298, 287, 277, 267, 261, 256, 256, 256,
                    259, 264, 272, 281, 291, 304, 318, 338, 357, 381, 409, 439, 475, 519, 561, 584, 536,
                    491, 454, 424, 394, 369, 347, 330, 313, 299, 288, 279, 269, 263, 258, 257, 257, 261,
                    266, 274, 283, 293, 306, 322, 338, 359, 383, 409, 443, 478, 521, 565, 586, 541, 496,
                    460, 425, 397, 372, 350, 332, 316, 304, 291, 282, 273, 266, 262, 261, 261, 263, 268,
                    276, 285, 297, 309, 324, 342, 361, 386, 412, 445, 484, 526, 571, 593, 545, 504, 464,
                    429, 400, 376, 355, 336, 319, 306, 295, 284, 275, 271, 266, 263, 266, 267, 273, 280,
                    289, 300, 314, 329, 345, 366, 389, 417, 450, 489, 533, 574, 597, 557, 507, 467, 434,
                    404, 381, 359, 338, 325, 310, 298, 289, 281, 274, 269, 269, 269, 273, 276, 283, 292,
                    304, 317, 332, 348, 371, 395, 422, 455, 495, 538, 584, 608, 563, 515, 473, 438, 412,
                    385, 365, 345, 328, 315, 304, 295, 285, 280, 275, 274, 274, 277, 281, 288, 298, 309,
                    322, 336, 355, 375, 399, 429, 462, 499, 545, 588, 621, 571, 521, 481, 446, 417, 391,
                    370, 350, 335, 322, 308, 299, 290, 284, 282, 280, 280, 283, 287, 292, 302, 313, 325,
                    342, 359, 381, 406, 434, 469, 510, 550, 595, 630, 582, 533, 489, 452, 425, 398, 376,
                    357, 340, 327, 315, 305, 298, 291, 288, 285, 285, 288, 293, 299, 308, 319, 332, 347,
                    366, 387, 413, 443, 474, 515, 561, 603, 645, 597, 545, 504, 464, 433, 404, 383, 364,
                    348, 334, 323, 311, 304, 298, 294, 291, 292, 296, 299, 306, 315, 325, 338, 355, 372,
                    395, 419, 451, 486, 523, 571, 619, 660, 608, 557, 513, 473, 444, 415, 394, 373, 357,
                    342, 329, 319, 312, 305, 301, 299, 299, 303, 306, 313, 322, 334, 346, 361, 381, 403,
                    428, 460, 495, 534, 586, 628, 676, 626, 571, 528, 486, 454, 426, 401, 381, 363, 349,
                    336, 327, 318, 313, 309, 307, 306, 309, 314, 320, 330, 343, 355, 371, 389, 413, 438,
                    469, 505, 546, 595, 642, 701, 642, 588, 539, 499, 466, 436, 410, 393, 375, 359, 346,
                    336, 327, 322, 317, 316, 316, 318, 323, 329, 338, 350, 363, 381, 400, 424, 450, 481,
                    518, 561, 610, 663, 722, 663, 603, 559, 515, 478, 450, 425, 402, 385, 370, 356, 345,
                    337, 330, 327, 325, 325, 327, 333, 338, 348, 360, 373, 389, 411, 434, 462, 493, 533,
                    576, 630, 681, 748, 681, 623, 572, 531, 492, 464, 437, 414, 396, 380, 366, 356, 347,
                    340, 337, 335, 335, 338, 343, 350, 359, 370, 384, 401, 421, 446, 473, 508, 546, 591,
                    645, 707, 762, 701, 638, 586, 536, 504, 470, 446, 423, 402, 385, 372, 362, 353, 348,
                    343, 340, 341, 345, 350, 356, 366, 378, 391, 410, 429, 454, 482, 516, 557, 601, 663,
                    716,
                },

                /* gr_gain: */
                {
                    702, 643, 590, 540, 499, 468, 437, 414, 394, 376, 361, 348, 339, 331, 324, 321, 320,
                    321, 326, 329, 337, 348, 357, 371, 389, 411, 434, 463, 496, 537, 582, 637, 695, 684,
                    633, 576, 529, 491, 459, 430, 407, 388, 370, 355, 342, 333, 324, 318, 316, 313, 315,
                    318, 323, 330, 341, 349, 363, 381, 403, 426, 454, 486, 526, 572, 623, 676, 668, 615,
                    560, 515, 479, 448, 418, 397, 378, 361, 346, 334, 324, 317, 311, 307, 306, 306, 309,
                    316, 322, 331, 342, 355, 372, 393, 415, 443, 474, 511, 557, 607, 660, 652, 599, 546,
                    502, 468, 436, 410, 388, 370, 352, 337, 327, 317, 308, 303, 300, 297, 298, 301, 306,
                    313, 323, 333, 347, 363, 382, 405, 432, 461, 498, 542, 593, 642, 635, 583, 536, 493,
                    457, 426, 401, 379, 362, 344, 331, 319, 310, 302, 295, 292, 290, 290, 292, 298, 306,
                    313, 324, 337, 354, 373, 396, 422, 451, 487, 530, 578, 629, 620, 572, 523, 483, 448,
                    418, 394, 371, 354, 337, 324, 313, 303, 296, 290, 285, 283, 283, 286, 291, 297, 306,
                    317, 331, 347, 365, 387, 414, 443, 478, 518, 565, 616, 608, 560, 512, 474, 441, 411,
                    386, 364, 348, 331, 318, 307, 297, 290, 284, 280, 276, 277, 279, 283, 291, 300, 312,
                    324, 341, 358, 381, 405, 434, 468, 509, 556, 608, 595, 552, 506, 467, 434, 405, 380,
                    359, 342, 327, 313, 302, 292, 285, 278, 273, 270, 270, 273, 278, 285, 295, 306, 318,
                    334, 353, 373, 398, 427, 460, 499, 544, 599, 588, 542, 497, 459, 426, 398, 375, 355,
                    337, 322, 309, 297, 288, 280, 273, 269, 266, 265, 268, 273, 280, 289, 300, 313, 329,
                    348, 369, 393, 419, 454, 493, 537, 590, 577, 536, 492, 454, 422, 394, 371, 350, 333,
                    317, 305, 294, 284, 276, 269, 265, 261, 261, 264, 268, 276, 285, 296, 310, 324, 343,
                    364, 387, 414, 447, 485, 529, 583, 572, 527, 485, 448, 417, 389, 365, 347, 329, 313,
                    301, 290, 281, 272, 266, 261, 259, 258, 260, 265, 272, 282, 292, 306, 321, 339, 359,
                    382, 411, 441, 479, 523, 571, 567, 524, 482, 446, 415, 386, 363, 343, 326, 311, 298,
                    287, 277, 269, 262, 259, 257, 257, 258, 262, 269, 279, 291, 302, 318, 335, 356, 379,
                    406, 436, 474, 517, 556, 563, 521, 479, 443, 412, 385, 362, 342, 323, 308, 295, 285,
                    276, 267, 261, 257, 257, 256, 259, 260, 268, 277, 289, 301, 316, 333, 352, 377, 404,
                    433, 470, 511, 552, 560, 517, 478, 443, 409, 384, 361, 340, 321, 307, 295, 283, 273,
                    265, 260, 256, 256, 256, 257, 260, 267, 276, 287, 299, 315, 330, 350, 374, 402, 431,
                    467, 508, 549, 557, 516, 475, 441, 408, 383, 359, 339, 321, 306, 292, 282, 273, 265,
                    259, 256, 256, 256, 257, 260, 266, 276, 287, 299, 312, 329, 350, 372, 398, 428, 465,
                    505, 544, 557, 516, 474, 439, 408, 382, 359, 339, 321, 305, 292, 282, 272, 264, 258,
                    256, 256, 256, 258, 260, 267, 276, 286, 298, 312, 329, 349, 372, 398, 428, 463, 505,
                    542, 558, 515, 477, 439, 408, 381, 360, 338, 321, 306, 293, 282, 272, 264, 258, 256,
                    256, 256, 257, 260, 267, 276, 287, 298, 312, 329, 348, 371, 398, 426, 462, 502, 541,
                    558, 516, 478, 442, 411, 382, 359, 339, 323, 307, 294, 283, 273, 265, 258, 256, 256,
                    256, 257, 261, 268, 277, 288, 300, 313, 330, 349, 371, 397, 427, 462, 505, 542, 559,
                    520, 479, 443, 412, 384, 361, 340, 323, 308, 295, 285, 275, 267, 260, 256, 256, 256,
                    258, 262, 269, 279, 289, 301, 315, 333, 351, 373, 398, 428, 466, 505, 543, 566, 521,
                    480, 445, 414, 387, 363, 342, 325, 311, 296, 286, 276, 269, 262, 257, 257, 257, 260,
                    264, 272, 281, 291, 304, 317, 334, 353, 376, 402, 431, 467, 508, 549, 571, 525, 484,
                    448, 416, 389, 366, 346, 328, 312, 300, 289, 280, 271, 265, 261, 259, 260, 263, 267,
                    274, 283, 294, 306, 321, 336, 356, 379, 405, 432, 471, 514, 553, 574, 530, 488, 454,
                    421, 393, 370, 349, 331, 316, 303, 291, 282, 276, 269, 264, 263, 264, 265, 271, 278,
                    287, 297, 308, 323, 340, 360, 381, 408, 439, 474, 519, 558, 583, 539, 495, 457, 425,
                    398, 373, 354, 335, 320, 307, 296, 286, 279, 273, 269, 268, 268, 270, 275, 282, 291,
                    301, 313, 327, 343, 363, 386, 414, 445, 483, 523, 566, 591, 545, 501, 463, 432, 404,
                    379, 359, 341, 325, 312, 301, 291, 283, 278, 273, 273, 272, 276, 280, 286, 295, 305,
                    318, 332, 348, 369, 391, 417, 449, 487, 530, 572, 599, 557, 510, 471, 437, 411, 386,
                    365, 347, 331, 318, 306, 297, 290, 284, 279, 277, 278, 281, 285, 291, 300, 311, 323,
                    337, 355, 373, 398, 425, 458, 494, 538, 577, 615, 567, 521, 480, 445, 417, 393, 371,
                    353, 337, 324, 312, 302, 295, 290, 286, 284, 285, 287, 291, 297, 306, 316, 328, 343,
                    361, 380, 405, 433, 466, 501, 544, 589, 627, 579, 532, 490, 455, 424, 399, 378, 361,
                    345, 330, 318, 310, 302, 297, 292, 291, 291, 293, 297, 304, 312, 323, 336, 350, 368,
                    388, 413, 439, 474, 511, 555, 598, 643, 594, 544, 500, 466, 434, 409, 386, 368, 352,
                    339, 327, 317, 310, 304, 300, 298, 299, 300, 305, 311, 319, 330, 342, 357, 375, 396,
                    421, 448, 482, 523, 566, 611, 657, 611, 557, 513, 476, 446, 420, 396, 377, 361, 347,
                    335, 324, 317, 312, 307, 306, 306, 308, 312, 318, 327, 337, 351, 365, 384, 405, 429,
                    459, 493, 532, 579, 623, 681, 625, 573, 529, 489, 457, 431, 407, 387, 370, 356, 343,
                    334, 327, 319, 316, 313, 315, 317, 321, 327, 335, 347, 359, 373, 394, 414, 439, 469,
                    506, 546, 593, 643, 696, 643, 588, 542, 505, 469, 443, 417, 397, 379, 365, 353, 342,
                    335, 329, 324, 323, 323, 325, 329, 335, 345, 356, 369, 386, 404, 425, 450, 483, 517,
                    558, 611, 663, 720, 660, 607, 558, 516, 484, 455, 432, 407, 390, 374, 363, 352, 343,
                    339, 335, 333, 331, 335, 339, 345, 354, 365, 378, 396, 414, 436, 463, 496, 531, 574,
                    626, 681, 737, 673, 619, 571, 527, 492, 462, 437, 416, 397, 382, 369, 360, 350, 344,
                    341, 338, 337, 340, 345, 351, 361, 371, 386, 402, 420, 443, 471, 505, 541, 582, 637,
                    690,
                },

                /* gb_gain: */
                {
                    705, 645, 587, 539, 500, 468, 438, 413, 394, 377, 360, 348, 338, 331, 325, 321, 320,
                    322, 326, 330, 336, 347, 356, 371, 389, 409, 433, 462, 496, 533, 581, 638, 691, 688,
                    633, 575, 529, 489, 459, 429, 406, 387, 370, 354, 342, 332, 324, 318, 314, 314, 314,
                    318, 323, 330, 340, 349, 364, 381, 400, 426, 455, 485, 523, 569, 624, 680, 668, 614,
                    562, 516, 480, 448, 419, 397, 378, 360, 347, 334, 324, 317, 311, 307, 306, 306, 309,
                    315, 322, 331, 341, 353, 372, 392, 415, 443, 473, 512, 556, 609, 659, 648, 599, 547,
                    504, 468, 438, 409, 388, 370, 352, 337, 327, 317, 308, 302, 299, 297, 297, 301, 306,
                    314, 323, 332, 345, 363, 381, 405, 430, 462, 498, 541, 592, 638, 635, 583, 536, 493,
                    458, 427, 401, 380, 361, 343, 330, 319, 309, 301, 296, 292, 290, 291, 292, 298, 305,
                    313, 324, 338, 355, 373, 395, 422, 453, 487, 529, 578, 622, 618, 570, 524, 484, 448,
                    419, 394, 372, 353, 337, 323, 313, 303, 295, 290, 286, 283, 283, 286, 290, 297, 306,
                    318, 330, 348, 365, 388, 412, 443, 477, 517, 564, 617, 610, 563, 512, 474, 440, 411,
                    387, 365, 348, 331, 318, 307, 297, 290, 283, 278, 277, 277, 278, 283, 291, 299, 312,
                    324, 340, 358, 380, 405, 434, 469, 507, 555, 607, 598, 551, 506, 468, 432, 405, 380,
                    359, 343, 326, 313, 302, 293, 285, 278, 274, 271, 270, 273, 278, 285, 293, 304, 318,
                    334, 351, 373, 398, 427, 461, 499, 543, 597, 588, 543, 497, 460, 428, 399, 374, 355,
                    337, 322, 309, 298, 288, 279, 273, 269, 265, 265, 268, 273, 280, 288, 300, 313, 329,
                    347, 367, 390, 419, 455, 493, 537, 591, 578, 537, 492, 453, 423, 394, 371, 350, 333,
                    317, 305, 293, 284, 276, 269, 264, 261, 261, 264, 268, 275, 284, 296, 308, 325, 343,
                    364, 386, 414, 447, 485, 528, 579, 572, 529, 487, 449, 418, 390, 366, 348, 330, 314,
                    301, 290, 279, 273, 265, 261, 258, 259, 260, 264, 272, 281, 292, 305, 320, 338, 358,
                    382, 409, 440, 477, 522, 567, 568, 525, 483, 447, 415, 388, 364, 344, 326, 312, 298,
                    287, 277, 269, 262, 258, 257, 257, 259, 261, 269, 278, 290, 302, 318, 336, 355, 379,
                    407, 437, 473, 516, 555, 562, 519, 479, 444, 412, 385, 363, 343, 324, 308, 296, 284,
                    276, 267, 261, 257, 257, 257, 258, 261, 268, 277, 289, 301, 316, 332, 352, 375, 404,
                    434, 469, 511, 552, 562, 518, 477, 440, 411, 384, 361, 340, 322, 307, 294, 283, 274,
                    265, 260, 256, 256, 257, 258, 260, 266, 275, 287, 300, 314, 330, 351, 374, 402, 430,
                    467, 508, 548, 561, 517, 475, 440, 410, 382, 359, 338, 322, 306, 293, 282, 273, 265,
                    258, 256, 256, 257, 257, 260, 265, 275, 287, 299, 313, 330, 350, 373, 398, 428, 464,
                    505, 544, 559, 516, 475, 440, 408, 382, 358, 339, 321, 305, 293, 282, 272, 264, 258,
                    256, 256, 256, 257, 260, 266, 275, 287, 298, 312, 329, 349, 372, 398, 428, 462, 503,
                    542, 559, 516, 475, 440, 408, 382, 358, 340, 322, 306, 293, 282, 273, 264, 258, 256,
                    256, 256, 257, 261, 267, 277, 287, 298, 313, 329, 349, 371, 398, 427, 462, 502, 542,
                    559, 517, 476, 440, 409, 383, 359, 338, 322, 307, 293, 283, 273, 265, 258, 256, 256,
                    256, 257, 261, 268, 277, 287, 299, 314, 330, 349, 372, 398, 428, 462, 503, 543, 562,
                    521, 480, 443, 412, 385, 362, 341, 323, 308, 296, 285, 274, 267, 260, 256, 256, 256,
                    257, 262, 269, 279, 289, 301, 315, 332, 351, 373, 399, 428, 465, 507, 544, 564, 522,
                    481, 445, 414, 387, 364, 343, 325, 311, 297, 287, 277, 269, 262, 257, 257, 257, 260,
                    265, 272, 281, 291, 303, 318, 335, 353, 375, 401, 432, 468, 509, 551, 571, 525, 485,
                    448, 417, 390, 367, 346, 329, 313, 300, 290, 280, 272, 265, 261, 260, 260, 262, 267,
                    274, 283, 294, 306, 320, 337, 356, 379, 405, 434, 470, 513, 553, 576, 531, 489, 454,
                    421, 394, 370, 350, 332, 317, 303, 293, 283, 274, 269, 265, 263, 264, 266, 272, 278,
                    287, 297, 309, 323, 340, 359, 382, 408, 438, 476, 517, 559, 583, 540, 496, 458, 426,
                    397, 374, 355, 336, 320, 307, 296, 287, 279, 274, 269, 268, 269, 271, 276, 282, 291,
                    301, 313, 328, 344, 364, 387, 414, 445, 482, 523, 562, 593, 548, 504, 465, 432, 405,
                    380, 358, 341, 325, 312, 301, 292, 283, 278, 274, 273, 273, 276, 280, 286, 295, 306,
                    318, 332, 349, 368, 390, 418, 450, 487, 530, 570, 603, 559, 513, 473, 438, 409, 387,
                    365, 348, 331, 318, 307, 297, 290, 284, 280, 278, 278, 282, 286, 292, 300, 311, 323,
                    338, 355, 374, 398, 426, 458, 495, 535, 575, 615, 569, 524, 481, 447, 417, 394, 372,
                    354, 338, 324, 313, 305, 296, 290, 286, 284, 284, 287, 291, 297, 306, 316, 329, 343,
                    362, 380, 405, 432, 464, 501, 544, 586, 631, 582, 532, 492, 456, 426, 400, 380, 362,
                    345, 331, 319, 311, 302, 297, 293, 291, 291, 293, 298, 303, 313, 323, 336, 349, 369,
                    388, 413, 439, 473, 511, 555, 597, 645, 596, 543, 502, 466, 435, 409, 387, 369, 352,
                    340, 328, 318, 310, 304, 301, 298, 299, 301, 305, 311, 320, 330, 343, 357, 376, 397,
                    421, 449, 484, 522, 565, 613, 660, 607, 560, 515, 479, 447, 419, 397, 378, 363, 348,
                    336, 325, 318, 312, 308, 306, 307, 308, 313, 319, 327, 338, 350, 365, 384, 405, 430,
                    460, 493, 535, 579, 626, 681, 625, 575, 530, 488, 459, 432, 406, 387, 371, 357, 344,
                    335, 326, 319, 316, 314, 314, 317, 322, 328, 336, 347, 359, 376, 394, 416, 440, 470,
                    507, 544, 594, 642, 697, 645, 592, 543, 506, 473, 444, 418, 398, 380, 366, 354, 344,
                    335, 330, 325, 324, 324, 325, 330, 336, 346, 357, 369, 386, 403, 425, 453, 482, 517,
                    560, 609, 659, 722, 665, 607, 560, 519, 484, 455, 430, 408, 390, 374, 364, 352, 344,
                    339, 336, 334, 332, 336, 338, 345, 355, 365, 379, 395, 414, 436, 463, 495, 532, 575,
                    626, 681, 739, 678, 621, 574, 531, 493, 463, 438, 417, 398, 382, 369, 359, 351, 346,
                    341, 340, 338, 341, 345, 352, 362, 372, 385, 401, 422, 444, 469, 504, 542, 588, 639,
                    693,
                },

                /* b_gain: */
                {
                    669, 620, 567, 522, 485, 456, 427, 402, 385, 368, 353, 341, 334, 327, 321, 317, 316,
                    317, 320, 326, 334, 341, 353, 367, 382, 404, 426, 456, 483, 524, 569, 620, 682, 657,
                    610, 554, 512, 477, 445, 419, 397, 380, 361, 346, 337, 327, 320, 315, 311, 310, 310,
                    315, 320, 328, 337, 346, 358, 374, 396, 419, 445, 477, 514, 558, 610, 660, 645, 590,
                    541, 503, 463, 435, 408, 388, 370, 354, 340, 329, 320, 313, 307, 304, 301, 303, 307,
                    311, 318, 328, 338, 351, 367, 385, 408, 435, 465, 503, 543, 595, 642, 623, 576, 527,
                    488, 454, 425, 400, 381, 361, 345, 332, 320, 312, 305, 299, 296, 295, 295, 298, 305,
                    309, 320, 329, 342, 358, 378, 398, 424, 456, 488, 527, 578, 620, 610, 567, 518, 478,
                    445, 416, 391, 371, 354, 337, 326, 315, 306, 298, 292, 289, 287, 288, 290, 296, 303,
                    310, 320, 334, 351, 368, 388, 415, 445, 478, 516, 567, 612, 600, 552, 505, 468, 436,
                    408, 384, 365, 346, 331, 319, 309, 300, 292, 286, 284, 281, 280, 285, 288, 294, 304,
                    314, 327, 342, 360, 382, 406, 436, 468, 507, 549, 605, 587, 541, 495, 460, 429, 401,
                    380, 358, 341, 327, 315, 305, 295, 287, 280, 277, 274, 275, 278, 281, 288, 297, 309,
                    320, 337, 354, 375, 398, 426, 460, 497, 539, 592, 578, 531, 490, 456, 422, 396, 371,
                    353, 337, 322, 309, 300, 290, 281, 277, 271, 270, 269, 271, 276, 283, 293, 303, 316,
                    330, 349, 368, 393, 419, 454, 488, 535, 585, 567, 524, 483, 447, 418, 389, 367, 349,
                    332, 317, 305, 295, 286, 278, 271, 268, 264, 263, 266, 271, 278, 287, 297, 311, 326,
                    343, 365, 387, 414, 446, 483, 522, 578, 560, 516, 477, 440, 413, 385, 364, 344, 328,
                    315, 300, 291, 281, 273, 268, 262, 261, 261, 262, 268, 275, 283, 294, 307, 322, 340,
                    358, 383, 408, 440, 477, 516, 569, 549, 512, 472, 438, 406, 382, 358, 341, 326, 310,
                    298, 288, 278, 270, 263, 260, 257, 258, 261, 263, 271, 279, 291, 305, 318, 335, 354,
                    379, 405, 434, 471, 512, 556, 547, 509, 468, 435, 405, 380, 357, 339, 320, 307, 296,
                    285, 276, 269, 262, 258, 257, 258, 260, 262, 269, 278, 289, 301, 317, 332, 352, 375,
                    401, 431, 466, 507, 547, 545, 505, 466, 434, 402, 378, 355, 337, 320, 305, 294, 283,
                    272, 265, 260, 256, 256, 257, 258, 261, 267, 276, 288, 299, 314, 330, 351, 371, 398,
                    426, 462, 503, 541, 541, 505, 465, 430, 401, 377, 354, 334, 317, 303, 292, 281, 272,
                    264, 259, 256, 257, 257, 259, 261, 266, 274, 286, 298, 310, 329, 349, 369, 396, 425,
                    460, 500, 537, 539, 503, 463, 431, 400, 374, 353, 334, 317, 303, 290, 280, 270, 263,
                    258, 256, 256, 257, 259, 261, 265, 276, 285, 297, 310, 327, 347, 368, 395, 424, 459,
                    495, 533, 537, 503, 465, 431, 399, 373, 352, 333, 317, 302, 289, 280, 271, 263, 257,
                    256, 256, 256, 258, 260, 265, 274, 286, 297, 311, 327, 346, 368, 391, 422, 456, 495,
                    533, 539, 503, 465, 431, 400, 374, 353, 333, 317, 303, 290, 279, 270, 263, 257, 256,
                    256, 256, 257, 261, 267, 276, 286, 297, 310, 327, 345, 368, 394, 421, 456, 493, 531,
                    539, 503, 462, 430, 401, 376, 353, 334, 318, 303, 291, 280, 271, 264, 257, 256, 256,
                    256, 257, 261, 267, 277, 287, 298, 311, 327, 346, 368, 395, 421, 456, 495, 531, 541,
                    505, 465, 434, 402, 377, 355, 337, 319, 304, 292, 283, 273, 265, 260, 256, 256, 256,
                    259, 262, 269, 278, 288, 300, 314, 329, 348, 369, 396, 422, 457, 498, 535, 547, 509,
                    466, 434, 407, 381, 358, 338, 320, 307, 296, 285, 277, 268, 262, 257, 256, 257, 261,
                    263, 271, 280, 289, 301, 316, 330, 351, 373, 397, 425, 460, 502, 537, 549, 512, 471,
                    438, 408, 383, 360, 341, 325, 309, 297, 288, 278, 271, 264, 261, 259, 261, 262, 268,
                    273, 284, 293, 305, 318, 334, 353, 375, 400, 429, 466, 505, 539, 556, 516, 477, 440,
                    413, 386, 366, 343, 328, 314, 300, 290, 280, 273, 268, 264, 262, 263, 265, 271, 277,
                    286, 296, 307, 322, 338, 356, 380, 404, 435, 469, 509, 545, 565, 522, 482, 446, 416,
                    390, 369, 350, 331, 317, 305, 295, 285, 278, 272, 268, 267, 268, 270, 275, 281, 289,
                    299, 312, 326, 341, 360, 383, 408, 438, 474, 514, 552, 571, 535, 490, 453, 422, 396,
                    372, 354, 336, 322, 309, 299, 289, 281, 276, 272, 271, 272, 274, 280, 286, 293, 305,
                    317, 330, 345, 366, 387, 415, 442, 480, 518, 560, 580, 541, 497, 460, 427, 401, 379,
                    358, 341, 328, 315, 305, 295, 288, 282, 278, 278, 277, 280, 285, 291, 298, 308, 320,
                    334, 351, 371, 393, 420, 450, 485, 525, 565, 597, 549, 507, 466, 436, 408, 384, 366,
                    346, 332, 320, 310, 301, 295, 287, 283, 283, 284, 285, 290, 297, 305, 315, 327, 341,
                    357, 375, 400, 425, 456, 491, 535, 573, 607, 565, 516, 478, 445, 418, 391, 373, 356,
                    341, 328, 317, 307, 300, 295, 290, 289, 291, 292, 296, 301, 310, 321, 333, 349, 365,
                    383, 407, 435, 466, 505, 541, 587, 623, 576, 529, 488, 454, 425, 402, 382, 364, 350,
                    336, 322, 316, 307, 300, 298, 297, 298, 299, 303, 309, 317, 328, 341, 354, 371, 390,
                    416, 443, 475, 512, 554, 600, 642, 590, 541, 503, 466, 436, 409, 388, 371, 356, 343,
                    332, 322, 315, 309, 306, 305, 305, 307, 310, 316, 326, 337, 347, 364, 380, 400, 424,
                    454, 483, 522, 567, 612, 651, 607, 554, 514, 478, 447, 422, 399, 382, 366, 352, 340,
                    330, 322, 317, 315, 313, 313, 315, 318, 326, 333, 344, 357, 371, 390, 410, 434, 463,
                    495, 537, 578, 623, 672, 623, 573, 531, 491, 460, 434, 409, 390, 374, 360, 348, 339,
                    332, 327, 322, 321, 321, 325, 327, 334, 342, 353, 368, 381, 400, 420, 445, 477, 509,
                    547, 595, 642, 692, 642, 590, 543, 505, 475, 443, 422, 402, 384, 370, 358, 349, 341,
                    337, 331, 330, 330, 332, 337, 343, 351, 363, 375, 390, 409, 433, 456, 485, 522, 560,
                    612, 663, 705, 657, 605, 554, 514, 482, 454, 431, 412, 389, 378, 365, 354, 350, 343,
                    338, 337, 337, 340, 342, 351, 358, 368, 383, 397, 416, 436, 465, 493, 533, 571, 623,
                    682,
                },
            },
            {
                /* r_gain: */
                {
                    745, 673, 608, 561, 519, 484, 452, 428, 408, 387, 371, 357, 347, 338, 334, 328, 328,
                    328, 332, 337, 348, 356, 367, 382, 399, 425, 449, 479, 515, 557, 605, 665, 719, 716,
                    660, 599, 550, 508, 474, 446, 420, 399, 380, 363, 350, 342, 333, 326, 323, 322, 322,
                    325, 332, 338, 349, 360, 374, 392, 414, 439, 470, 505, 545, 595, 650, 704, 701, 640,
                    580, 536, 495, 464, 433, 409, 388, 370, 355, 343, 333, 324, 317, 313, 312, 312, 317,
                    322, 329, 340, 350, 366, 382, 403, 429, 458, 491, 533, 578, 630, 684, 676, 626, 569,
                    521, 485, 451, 424, 400, 380, 361, 345, 334, 324, 316, 309, 306, 304, 305, 307, 313,
                    320, 332, 340, 356, 373, 395, 417, 448, 478, 518, 563, 614, 668, 663, 608, 557, 510,
                    473, 440, 412, 389, 371, 352, 338, 326, 316, 307, 301, 298, 296, 296, 298, 305, 311,
                    322, 332, 347, 363, 384, 410, 436, 467, 508, 546, 599, 647, 647, 595, 541, 498, 465,
                    430, 403, 381, 362, 346, 332, 319, 308, 300, 294, 290, 288, 289, 290, 296, 302, 313,
                    325, 339, 356, 375, 398, 427, 456, 493, 536, 588, 640, 633, 580, 533, 488, 452, 424,
                    397, 374, 355, 338, 324, 313, 301, 295, 288, 283, 281, 281, 283, 288, 296, 305, 317,
                    332, 348, 368, 392, 417, 449, 485, 524, 574, 630, 619, 567, 519, 482, 446, 415, 389,
                    368, 348, 333, 317, 307, 297, 288, 281, 276, 275, 274, 277, 282, 289, 299, 310, 325,
                    342, 361, 383, 410, 439, 474, 515, 565, 621, 608, 561, 513, 471, 438, 409, 384, 362,
                    345, 327, 313, 301, 291, 283, 276, 271, 269, 268, 270, 276, 284, 293, 305, 320, 336,
                    356, 377, 402, 431, 467, 507, 552, 605, 597, 552, 507, 466, 433, 403, 379, 357, 339,
                    323, 308, 297, 287, 279, 272, 267, 264, 264, 266, 271, 281, 288, 300, 315, 331, 349,
                    371, 397, 426, 462, 499, 545, 597, 591, 543, 498, 461, 428, 400, 373, 352, 336, 318,
                    305, 293, 283, 275, 268, 263, 261, 261, 262, 268, 275, 285, 296, 310, 327, 345, 368,
                    393, 420, 455, 492, 539, 591, 584, 539, 493, 456, 425, 396, 371, 350, 330, 315, 302,
                    290, 280, 272, 264, 261, 259, 260, 261, 265, 273, 283, 295, 308, 323, 343, 363, 389,
                    416, 450, 488, 533, 578, 582, 536, 489, 452, 422, 394, 368, 348, 328, 313, 299, 287,
                    277, 268, 262, 259, 259, 259, 260, 263, 269, 281, 291, 305, 320, 338, 359, 384, 413,
                    446, 485, 528, 571, 574, 534, 489, 451, 419, 392, 367, 345, 327, 313, 298, 285, 276,
                    267, 261, 258, 257, 257, 260, 262, 269, 280, 291, 304, 317, 336, 357, 381, 410, 443,
                    481, 521, 565, 574, 533, 489, 450, 416, 388, 366, 344, 325, 310, 296, 285, 275, 266,
                    260, 257, 257, 258, 259, 261, 268, 278, 290, 302, 317, 335, 356, 381, 407, 439, 477,
                    519, 563, 571, 533, 486, 448, 416, 389, 365, 344, 324, 309, 295, 284, 274, 266, 259,
                    256, 256, 257, 259, 261, 268, 278, 290, 302, 316, 334, 356, 381, 408, 438, 474, 518,
                    561, 571, 533, 486, 449, 416, 388, 366, 344, 325, 309, 296, 285, 274, 266, 259, 256,
                    256, 256, 259, 261, 268, 279, 289, 302, 317, 334, 355, 380, 408, 437, 473, 516, 559,
                    574, 531, 488, 451, 419, 389, 366, 344, 326, 309, 297, 285, 275, 266, 260, 256, 256,
                    256, 259, 262, 269, 280, 291, 303, 317, 336, 356, 381, 408, 438, 474, 518, 559, 574,
                    533, 489, 452, 419, 393, 366, 345, 327, 311, 298, 287, 277, 267, 261, 256, 256, 256,
                    259, 264, 272, 281, 291, 304, 318, 338, 357, 381, 409, 439, 475, 519, 561, 584, 536,
                    491, 454, 424, 394, 369, 347, 330, 313, 299, 288, 279, 269, 263, 258, 257, 257, 261,
                    266, 274, 283, 293, 306, 322, 338, 359, 383, 409, 443, 478, 521, 565, 586, 541, 496,
                    460, 425, 397, 372, 350, 332, 316, 304, 291, 282, 273, 266, 262, 261, 261, 263, 268,
                    276, 285, 297, 309, 324, 342, 361, 386, 412, 445, 484, 526, 571, 593, 545, 504, 464,
                    429, 400, 376, 355, 336, 319, 306, 295, 284, 275, 271, 266, 263, 266, 267, 273, 280,
                    289, 300, 314, 329, 345, 366, 389, 417, 450, 489, 533, 574, 597, 557, 507, 467, 434,
                    404, 381, 359, 338, 325, 310, 298, 289, 281, 274, 269, 269, 269, 273, 276, 283, 292,
                    304, 317, 332, 348, 371, 395, 422, 455, 495, 538, 584, 608, 563, 515, 473, 438, 412,
                    385, 365, 345, 328, 315, 304, 295, 285, 280, 275, 274, 274, 277, 281, 288, 298, 309,
                    322, 336, 355, 375, 399, 429, 462, 499, 545, 588, 621, 571, 521, 481, 446, 417, 391,
                    370, 350, 335, 322, 308, 299, 290, 284, 282, 280, 280, 283, 287, 292, 302, 313, 325,
                    342, 359, 381, 406, 434, 469, 510, 550, 595, 630, 582, 533, 489, 452, 425, 398, 376,
                    357, 340, 327, 315, 305, 298, 291, 288, 285, 285, 288, 293, 299, 308, 319, 332, 347,
                    366, 387, 413, 443, 474, 515, 561, 603, 645, 597, 545, 504, 464, 433, 404, 383, 364,
                    348, 334, 323, 311, 304, 298, 294, 291, 292, 296, 299, 306, 315, 325, 338, 355, 372,
                    395, 419, 451, 486, 523, 571, 619, 660, 608, 557, 513, 473, 444, 415, 394, 373, 357,
                    342, 329, 319, 312, 305, 301, 299, 299, 303, 306, 313, 322, 334, 346, 361, 381, 403,
                    428, 460, 495, 534, 586, 628, 676, 626, 571, 528, 486, 454, 426, 401, 381, 363, 349,
                    336, 327, 318, 313, 309, 307, 306, 309, 314, 320, 330, 343, 355, 371, 389, 413, 438,
                    469, 505, 546, 595, 642, 701, 642, 588, 539, 499, 466, 436, 410, 393, 375, 359, 346,
                    336, 327, 322, 317, 316, 316, 318, 323, 329, 338, 350, 363, 381, 400, 424, 450, 481,
                    518, 561, 610, 663, 722, 663, 603, 559, 515, 478, 450, 425, 402, 385, 370, 356, 345,
                    337, 330, 327, 325, 325, 327, 333, 338, 348, 360, 373, 389, 411, 434, 462, 493, 533,
                    576, 630, 681, 748, 681, 623, 572, 531, 492, 464, 437, 414, 396, 380, 366, 356, 347,
                    340, 337, 335, 335, 338, 343, 350, 359, 370, 384, 401, 421, 446, 473, 508, 546, 591,
                    645, 707, 762, 701, 638, 586, 536, 504, 470, 446, 423, 402, 385, 372, 362, 353, 348,
                    343, 340, 341, 345, 350, 356, 366, 378, 391, 410, 429, 454, 482, 516, 557, 601, 663,
                    716,
                },

                /* gr_gain: */
                {
                    702, 643, 590, 540, 499, 468, 437, 414, 394, 376, 361, 348, 339, 331, 324, 321, 320,
                    321, 326, 329, 337, 348, 357, 371, 389, 411, 434, 463, 496, 537, 582, 637, 695, 684,
                    633, 576, 529, 491, 459, 430, 407, 388, 370, 355, 342, 333, 324, 318, 316, 313, 315,
                    318, 323, 330, 341, 349, 363, 381, 403, 426, 454, 486, 526, 572, 623, 676, 668, 615,
                    560, 515, 479, 448, 418, 397, 378, 361, 346, 334, 324, 317, 311, 307, 306, 306, 309,
                    316, 322, 331, 342, 355, 372, 393, 415, 443, 474, 511, 557, 607, 660, 652, 599, 546,
                    502, 468, 436, 410, 388, 370, 352, 337, 327, 317, 308, 303, 300, 297, 298, 301, 306,
                    313, 323, 333, 347, 363, 382, 405, 432, 461, 498, 542, 593, 642, 635, 583, 536, 493,
                    457, 426, 401, 379, 362, 344, 331, 319, 310, 302, 295, 292, 290, 290, 292, 298, 306,
                    313, 324, 337, 354, 373, 396, 422, 451, 487, 530, 578, 629, 620, 572, 523, 483, 448,
                    418, 394, 371, 354, 337, 324, 313, 303, 296, 290, 285, 283, 283, 286, 291, 297, 306,
                    317, 331, 347, 365, 387, 414, 443, 478, 518, 565, 616, 608, 560, 512, 474, 441, 411,
                    386, 364, 348, 331, 318, 307, 297, 290, 284, 280, 276, 277, 279, 283, 291, 300, 312,
                    324, 341, 358, 381, 405, 434, 468, 509, 556, 608, 595, 552, 506, 467, 434, 405, 380,
                    359, 342, 327, 313, 302, 292, 285, 278, 273, 270, 270, 273, 278, 285, 295, 306, 318,
                    334, 353, 373, 398, 427, 460, 499, 544, 599, 588, 542, 497, 459, 426, 398, 375, 355,
                    337, 322, 309, 297, 288, 280, 273, 269, 266, 265, 268, 273, 280, 289, 300, 313, 329,
                    348, 369, 393, 419, 454, 493, 537, 590, 577, 536, 492, 454, 422, 394, 371, 350, 333,
                    317, 305, 294, 284, 276, 269, 265, 261, 261, 264, 268, 276, 285, 296, 310, 324, 343,
                    364, 387, 414, 447, 485, 529, 583, 572, 527, 485, 448, 417, 389, 365, 347, 329, 313,
                    301, 290, 281, 272, 266, 261, 259, 258, 260, 265, 272, 282, 292, 306, 321, 339, 359,
                    382, 411, 441, 479, 523, 571, 567, 524, 482, 446, 415, 386, 363, 343, 326, 311, 298,
                    287, 277, 269, 262, 259, 257, 257, 258, 262, 269, 279, 291, 302, 318, 335, 356, 379,
                    406, 436, 474, 517, 556, 563, 521, 479, 443, 412, 385, 362, 342, 323, 308, 295, 285,
                    276, 267, 261, 257, 257, 256, 259, 260, 268, 277, 289, 301, 316, 333, 352, 377, 404,
                    433, 470, 511, 552, 560, 517, 478, 443, 409, 384, 361, 340, 321, 307, 295, 283, 273,
                    265, 260, 256, 256, 256, 257, 260, 267, 276, 287, 299, 315, 330, 350, 374, 402, 431,
                    467, 508, 549, 557, 516, 475, 441, 408, 383, 359, 339, 321, 306, 292, 282, 273, 265,
                    259, 256, 256, 256, 257, 260, 266, 276, 287, 299, 312, 329, 350, 372, 398, 428, 465,
                    505, 544, 557, 516, 474, 439, 408, 382, 359, 339, 321, 305, 292, 282, 272, 264, 258,
                    256, 256, 256, 258, 260, 267, 276, 286, 298, 312, 329, 349, 372, 398, 428, 463, 505,
                    542, 558, 515, 477, 439, 408, 381, 360, 338, 321, 306, 293, 282, 272, 264, 258, 256,
                    256, 256, 257, 260, 267, 276, 287, 298, 312, 329, 348, 371, 398, 426, 462, 502, 541,
                    558, 516, 478, 442, 411, 382, 359, 339, 323, 307, 294, 283, 273, 265, 258, 256, 256,
                    256, 257, 261, 268, 277, 288, 300, 313, 330, 349, 371, 397, 427, 462, 505, 542, 559,
                    520, 479, 443, 412, 384, 361, 340, 323, 308, 295, 285, 275, 267, 260, 256, 256, 256,
                    258, 262, 269, 279, 289, 301, 315, 333, 351, 373, 398, 428, 466, 505, 543, 566, 521,
                    480, 445, 414, 387, 363, 342, 325, 311, 296, 286, 276, 269, 262, 257, 257, 257, 260,
                    264, 272, 281, 291, 304, 317, 334, 353, 376, 402, 431, 467, 508, 549, 571, 525, 484,
                    448, 416, 389, 366, 346, 328, 312, 300, 289, 280, 271, 265, 261, 259, 260, 263, 267,
                    274, 283, 294, 306, 321, 336, 356, 379, 405, 432, 471, 514, 553, 574, 530, 488, 454,
                    421, 393, 370, 349, 331, 316, 303, 291, 282, 276, 269, 264, 263, 264, 265, 271, 278,
                    287, 297, 308, 323, 340, 360, 381, 408, 439, 474, 519, 558, 583, 539, 495, 457, 425,
                    398, 373, 354, 335, 320, 307, 296, 286, 279, 273, 269, 268, 268, 270, 275, 282, 291,
                    301, 313, 327, 343, 363, 386, 414, 445, 483, 523, 566, 591, 545, 501, 463, 432, 404,
                    379, 359, 341, 325, 312, 301, 291, 283, 278, 273, 273, 272, 276, 280, 286, 295, 305,
                    318, 332, 348, 369, 391, 417, 449, 487, 530, 572, 599, 557, 510, 471, 437, 411, 386,
                    365, 347, 331, 318, 306, 297, 290, 284, 279, 277, 278, 281, 285, 291, 300, 311, 323,
                    337, 355, 373, 398, 425, 458, 494, 538, 577, 615, 567, 521, 480, 445, 417, 393, 371,
                    353, 337, 324, 312, 302, 295, 290, 286, 284, 285, 287, 291, 297, 306, 316, 328, 343,
                    361, 380, 405, 433, 466, 501, 544, 589, 627, 579, 532, 490, 455, 424, 399, 378, 361,
                    345, 330, 318, 310, 302, 297, 292, 291, 291, 293, 297, 304, 312, 323, 336, 350, 368,
                    388, 413, 439, 474, 511, 555, 598, 643, 594, 544, 500, 466, 434, 409, 386, 368, 352,
                    339, 327, 317, 310, 304, 300, 298, 299, 300, 305, 311, 319, 330, 342, 357, 375, 396,
                    421, 448, 482, 523, 566, 611, 657, 611, 557, 513, 476, 446, 420, 396, 377, 361, 347,
                    335, 324, 317, 312, 307, 306, 306, 308, 312, 318, 327, 337, 351, 365, 384, 405, 429,
                    459, 493, 532, 579, 623, 681, 625, 573, 529, 489, 457, 431, 407, 387, 370, 356, 343,
                    334, 327, 319, 316, 313, 315, 317, 321, 327, 335, 347, 359, 373, 394, 414, 439, 469,
                    506, 546, 593, 643, 696, 643, 588, 542, 505, 469, 443, 417, 397, 379, 365, 353, 342,
                    335, 329, 324, 323, 323, 325, 329, 335, 345, 356, 369, 386, 404, 425, 450, 483, 517,
                    558, 611, 663, 720, 660, 607, 558, 516, 484, 455, 432, 407, 390, 374, 363, 352, 343,
                    339, 335, 333, 331, 335, 339, 345, 354, 365, 378, 396, 414, 436, 463, 496, 531, 574,
                    626, 681, 737, 673, 619, 571, 527, 492, 462, 437, 416, 397, 382, 369, 360, 350, 344,
                    341, 338, 337, 340, 345, 351, 361, 371, 386, 402, 420, 443, 471, 505, 541, 582, 637,
                    690,
                },

                /* gb_gain: */
                {
                    705, 645, 587, 539, 500, 468, 438, 413, 394, 377, 360, 348, 338, 331, 325, 321, 320,
                    322, 326, 330, 336, 347, 356, 371, 389, 409, 433, 462, 496, 533, 581, 638, 691, 688,
                    633, 575, 529, 489, 459, 429, 406, 387, 370, 354, 342, 332, 324, 318, 314, 314, 314,
                    318, 323, 330, 340, 349, 364, 381, 400, 426, 455, 485, 523, 569, 624, 680, 668, 614,
                    562, 516, 480, 448, 419, 397, 378, 360, 347, 334, 324, 317, 311, 307, 306, 306, 309,
                    315, 322, 331, 341, 353, 372, 392, 415, 443, 473, 512, 556, 609, 659, 648, 599, 547,
                    504, 468, 438, 409, 388, 370, 352, 337, 327, 317, 308, 302, 299, 297, 297, 301, 306,
                    314, 323, 332, 345, 363, 381, 405, 430, 462, 498, 541, 592, 638, 635, 583, 536, 493,
                    458, 427, 401, 380, 361, 343, 330, 319, 309, 301, 296, 292, 290, 291, 292, 298, 305,
                    313, 324, 338, 355, 373, 395, 422, 453, 487, 529, 578, 622, 618, 570, 524, 484, 448,
                    419, 394, 372, 353, 337, 323, 313, 303, 295, 290, 286, 283, 283, 286, 290, 297, 306,
                    318, 330, 348, 365, 388, 412, 443, 477, 517, 564, 617, 610, 563, 512, 474, 440, 411,
                    387, 365, 348, 331, 318, 307, 297, 290, 283, 278, 277, 277, 278, 283, 291, 299, 312,
                    324, 340, 358, 380, 405, 434, 469, 507, 555, 607, 598, 551, 506, 468, 432, 405, 380,
                    359, 343, 326, 313, 302, 293, 285, 278, 274, 271, 270, 273, 278, 285, 293, 304, 318,
                    334, 351, 373, 398, 427, 461, 499, 543, 597, 588, 543, 497, 460, 428, 399, 374, 355,
                    337, 322, 309, 298, 288, 279, 273, 269, 265, 265, 268, 273, 280, 288, 300, 313, 329,
                    347, 367, 390, 419, 455, 493, 537, 591, 578, 537, 492, 453, 423, 394, 371, 350, 333,
                    317, 305, 293, 284, 276, 269, 264, 261, 261, 264, 268, 275, 284, 296, 308, 325, 343,
                    364, 386, 414, 447, 485, 528, 579, 572, 529, 487, 449, 418, 390, 366, 348, 330, 314,
                    301, 290, 279, 273, 265, 261, 258, 259, 260, 264, 272, 281, 292, 305, 320, 338, 358,
                    382, 409, 440, 477, 522, 567, 568, 525, 483, 447, 415, 388, 364, 344, 326, 312, 298,
                    287, 277, 269, 262, 258, 257, 257, 259, 261, 269, 278, 290, 302, 318, 336, 355, 379,
                    407, 437, 473, 516, 555, 562, 519, 479, 444, 412, 385, 363, 343, 324, 308, 296, 284,
                    276, 267, 261, 257, 257, 257, 258, 261, 268, 277, 289, 301, 316, 332, 352, 375, 404,
                    434, 469, 511, 552, 562, 518, 477, 440, 411, 384, 361, 340, 322, 307, 294, 283, 274,
                    265, 260, 256, 256, 257, 258, 260, 266, 275, 287, 300, 314, 330, 351, 374, 402, 430,
                    467, 508, 548, 561, 517, 475, 440, 410, 382, 359, 338, 322, 306, 293, 282, 273, 265,
                    258, 256, 256, 257, 257, 260, 265, 275, 287, 299, 313, 330, 350, 373, 398, 428, 464,
                    505, 544, 559, 516, 475, 440, 408, 382, 358, 339, 321, 305, 293, 282, 272, 264, 258,
                    256, 256, 256, 257, 260, 266, 275, 287, 298, 312, 329, 349, 372, 398, 428, 462, 503,
                    542, 559, 516, 475, 440, 408, 382, 358, 340, 322, 306, 293, 282, 273, 264, 258, 256,
                    256, 256, 257, 261, 267, 277, 287, 298, 313, 329, 349, 371, 398, 427, 462, 502, 542,
                    559, 517, 476, 440, 409, 383, 359, 338, 322, 307, 293, 283, 273, 265, 258, 256, 256,
                    256, 257, 261, 268, 277, 287, 299, 314, 330, 349, 372, 398, 428, 462, 503, 543, 562,
                    521, 480, 443, 412, 385, 362, 341, 323, 308, 296, 285, 274, 267, 260, 256, 256, 256,
                    257, 262, 269, 279, 289, 301, 315, 332, 351, 373, 399, 428, 465, 507, 544, 564, 522,
                    481, 445, 414, 387, 364, 343, 325, 311, 297, 287, 277, 269, 262, 257, 257, 257, 260,
                    265, 272, 281, 291, 303, 318, 335, 353, 375, 401, 432, 468, 509, 551, 571, 525, 485,
                    448, 417, 390, 367, 346, 329, 313, 300, 290, 280, 272, 265, 261, 260, 260, 262, 267,
                    274, 283, 294, 306, 320, 337, 356, 379, 405, 434, 470, 513, 553, 576, 531, 489, 454,
                    421, 394, 370, 350, 332, 317, 303, 293, 283, 274, 269, 265, 263, 264, 266, 272, 278,
                    287, 297, 309, 323, 340, 359, 382, 408, 438, 476, 517, 559, 583, 540, 496, 458, 426,
                    397, 374, 355, 336, 320, 307, 296, 287, 279, 274, 269, 268, 269, 271, 276, 282, 291,
                    301, 313, 328, 344, 364, 387, 414, 445, 482, 523, 562, 593, 548, 504, 465, 432, 405,
                    380, 358, 341, 325, 312, 301, 292, 283, 278, 274, 273, 273, 276, 280, 286, 295, 306,
                    318, 332, 349, 368, 390, 418, 450, 487, 530, 570, 603, 559, 513, 473, 438, 409, 387,
                    365, 348, 331, 318, 307, 297, 290, 284, 280, 278, 278, 282, 286, 292, 300, 311, 323,
                    338, 355, 374, 398, 426, 458, 495, 535, 575, 615, 569, 524, 481, 447, 417, 394, 372,
                    354, 338, 324, 313, 305, 296, 290, 286, 284, 284, 287, 291, 297, 306, 316, 329, 343,
                    362, 380, 405, 432, 464, 501, 544, 586, 631, 582, 532, 492, 456, 426, 400, 380, 362,
                    345, 331, 319, 311, 302, 297, 293, 291, 291, 293, 298, 303, 313, 323, 336, 349, 369,
                    388, 413, 439, 473, 511, 555, 597, 645, 596, 543, 502, 466, 435, 409, 387, 369, 352,
                    340, 328, 318, 310, 304, 301, 298, 299, 301, 305, 311, 320, 330, 343, 357, 376, 397,
                    421, 449, 484, 522, 565, 613, 660, 607, 560, 515, 479, 447, 419, 397, 378, 363, 348,
                    336, 325, 318, 312, 308, 306, 307, 308, 313, 319, 327, 338, 350, 365, 384, 405, 430,
                    460, 493, 535, 579, 626, 681, 625, 575, 530, 488, 459, 432, 406, 387, 371, 357, 344,
                    335, 326, 319, 316, 314, 314, 317, 322, 328, 336, 347, 359, 376, 394, 416, 440, 470,
                    507, 544, 594, 642, 697, 645, 592, 543, 506, 473, 444, 418, 398, 380, 366, 354, 344,
                    335, 330, 325, 324, 324, 325, 330, 336, 346, 357, 369, 386, 403, 425, 453, 482, 517,
                    560, 609, 659, 722, 665, 607, 560, 519, 484, 455, 430, 408, 390, 374, 364, 352, 344,
                    339, 336, 334, 332, 336, 338, 345, 355, 365, 379, 395, 414, 436, 463, 495, 532, 575,
                    626, 681, 739, 678, 621, 574, 531, 493, 463, 438, 417, 398, 382, 369, 359, 351, 346,
                    341, 340, 338, 341, 345, 352, 362, 372, 385, 401, 422, 444, 469, 504, 542, 588, 639,
                    693,
                },

                /* b_gain: */
                {
                    669, 620, 567, 522, 485, 456, 427, 402, 385, 368, 353, 341, 334, 327, 321, 317, 316,
                    317, 320, 326, 334, 341, 353, 367, 382, 404, 426, 456, 483, 524, 569, 620, 682, 657,
                    610, 554, 512, 477, 445, 419, 397, 380, 361, 346, 337, 327, 320, 315, 311, 310, 310,
                    315, 320, 328, 337, 346, 358, 374, 396, 419, 445, 477, 514, 558, 610, 660, 645, 590,
                    541, 503, 463, 435, 408, 388, 370, 354, 340, 329, 320, 313, 307, 304, 301, 303, 307,
                    311, 318, 328, 338, 351, 367, 385, 408, 435, 465, 503, 543, 595, 642, 623, 576, 527,
                    488, 454, 425, 400, 381, 361, 345, 332, 320, 312, 305, 299, 296, 295, 295, 298, 305,
                    309, 320, 329, 342, 358, 378, 398, 424, 456, 488, 527, 578, 620, 610, 567, 518, 478,
                    445, 416, 391, 371, 354, 337, 326, 315, 306, 298, 292, 289, 287, 288, 290, 296, 303,
                    310, 320, 334, 351, 368, 388, 415, 445, 478, 516, 567, 612, 600, 552, 505, 468, 436,
                    408, 384, 365, 346, 331, 319, 309, 300, 292, 286, 284, 281, 280, 285, 288, 294, 304,
                    314, 327, 342, 360, 382, 406, 436, 468, 507, 549, 605, 587, 541, 495, 460, 429, 401,
                    380, 358, 341, 327, 315, 305, 295, 287, 280, 277, 274, 275, 278, 281, 288, 297, 309,
                    320, 337, 354, 375, 398, 426, 460, 497, 539, 592, 578, 531, 490, 456, 422, 396, 371,
                    353, 337, 322, 309, 300, 290, 281, 277, 271, 270, 269, 271, 276, 283, 293, 303, 316,
                    330, 349, 368, 393, 419, 454, 488, 535, 585, 567, 524, 483, 447, 418, 389, 367, 349,
                    332, 317, 305, 295, 286, 278, 271, 268, 264, 263, 266, 271, 278, 287, 297, 311, 326,
                    343, 365, 387, 414, 446, 483, 522, 578, 560, 516, 477, 440, 413, 385, 364, 344, 328,
                    315, 300, 291, 281, 273, 268, 262, 261, 261, 262, 268, 275, 283, 294, 307, 322, 340,
                    358, 383, 408, 440, 477, 516, 569, 549, 512, 472, 438, 406, 382, 358, 341, 326, 310,
                    298, 288, 278, 270, 263, 260, 257, 258, 261, 263, 271, 279, 291, 305, 318, 335, 354,
                    379, 405, 434, 471, 512, 556, 547, 509, 468, 435, 405, 380, 357, 339, 320, 307, 296,
                    285, 276, 269, 262, 258, 257, 258, 260, 262, 269, 278, 289, 301, 317, 332, 352, 375,
                    401, 431, 466, 507, 547, 545, 505, 466, 434, 402, 378, 355, 337, 320, 305, 294, 283,
                    272, 265, 260, 256, 256, 257, 258, 261, 267, 276, 288, 299, 314, 330, 351, 371, 398,
                    426, 462, 503, 541, 541, 505, 465, 430, 401, 377, 354, 334, 317, 303, 292, 281, 272,
                    264, 259, 256, 257, 257, 259, 261, 266, 274, 286, 298, 310, 329, 349, 369, 396, 425,
                    460, 500, 537, 539, 503, 463, 431, 400, 374, 353, 334, 317, 303, 290, 280, 270, 263,
                    258, 256, 256, 257, 259, 261, 265, 276, 285, 297, 310, 327, 347, 368, 395, 424, 459,
                    495, 533, 537, 503, 465, 431, 399, 373, 352, 333, 317, 302, 289, 280, 271, 263, 257,
                    256, 256, 256, 258, 260, 265, 274, 286, 297, 311, 327, 346, 368, 391, 422, 456, 495,
                    533, 539, 503, 465, 431, 400, 374, 353, 333, 317, 303, 290, 279, 270, 263, 257, 256,
                    256, 256, 257, 261, 267, 276, 286, 297, 310, 327, 345, 368, 394, 421, 456, 493, 531,
                    539, 503, 462, 430, 401, 376, 353, 334, 318, 303, 291, 280, 271, 264, 257, 256, 256,
                    256, 257, 261, 267, 277, 287, 298, 311, 327, 346, 368, 395, 421, 456, 495, 531, 541,
                    505, 465, 434, 402, 377, 355, 337, 319, 304, 292, 283, 273, 265, 260, 256, 256, 256,
                    259, 262, 269, 278, 288, 300, 314, 329, 348, 369, 396, 422, 457, 498, 535, 547, 509,
                    466, 434, 407, 381, 358, 338, 320, 307, 296, 285, 277, 268, 262, 257, 256, 257, 261,
                    263, 271, 280, 289, 301, 316, 330, 351, 373, 397, 425, 460, 502, 537, 549, 512, 471,
                    438, 408, 383, 360, 341, 325, 309, 297, 288, 278, 271, 264, 261, 259, 261, 262, 268,
                    273, 284, 293, 305, 318, 334, 353, 375, 400, 429, 466, 505, 539, 556, 516, 477, 440,
                    413, 386, 366, 343, 328, 314, 300, 290, 280, 273, 268, 264, 262, 263, 265, 271, 277,
                    286, 296, 307, 322, 338, 356, 380, 404, 435, 469, 509, 545, 565, 522, 482, 446, 416,
                    390, 369, 350, 331, 317, 305, 295, 285, 278, 272, 268, 267, 268, 270, 275, 281, 289,
                    299, 312, 326, 341, 360, 383, 408, 438, 474, 514, 552, 571, 535, 490, 453, 422, 396,
                    372, 354, 336, 322, 309, 299, 289, 281, 276, 272, 271, 272, 274, 280, 286, 293, 305,
                    317, 330, 345, 366, 387, 415, 442, 480, 518, 560, 580, 541, 497, 460, 427, 401, 379,
                    358, 341, 328, 315, 305, 295, 288, 282, 278, 278, 277, 280, 285, 291, 298, 308, 320,
                    334, 351, 371, 393, 420, 450, 485, 525, 565, 597, 549, 507, 466, 436, 408, 384, 366,
                    346, 332, 320, 310, 301, 295, 287, 283, 283, 284, 285, 290, 297, 305, 315, 327, 341,
                    357, 375, 400, 425, 456, 491, 535, 573, 607, 565, 516, 478, 445, 418, 391, 373, 356,
                    341, 328, 317, 307, 300, 295, 290, 289, 291, 292, 296, 301, 310, 321, 333, 349, 365,
                    383, 407, 435, 466, 505, 541, 587, 623, 576, 529, 488, 454, 425, 402, 382, 364, 350,
                    336, 322, 316, 307, 300, 298, 297, 298, 299, 303, 309, 317, 328, 341, 354, 371, 390,
                    416, 443, 475, 512, 554, 600, 642, 590, 541, 503, 466, 436, 409, 388, 371, 356, 343,
                    332, 322, 315, 309, 306, 305, 305, 307, 310, 316, 326, 337, 347, 364, 380, 400, 424,
                    454, 483, 522, 567, 612, 651, 607, 554, 514, 478, 447, 422, 399, 382, 366, 352, 340,
                    330, 322, 317, 315, 313, 313, 315, 318, 326, 333, 344, 357, 371, 390, 410, 434, 463,
                    495, 537, 578, 623, 672, 623, 573, 531, 491, 460, 434, 409, 390, 374, 360, 348, 339,
                    332, 327, 322, 321, 321, 325, 327, 334, 342, 353, 368, 381, 400, 420, 445, 477, 509,
                    547, 595, 642, 692, 642, 590, 543, 505, 475, 443, 422, 402, 384, 370, 358, 349, 341,
                    337, 331, 330, 330, 332, 337, 343, 351, 363, 375, 390, 409, 433, 456, 485, 522, 560,
                    612, 663, 705, 657, 605, 554, 514, 482, 454, 431, 412, 389, 378, 365, 354, 350, 343,
                    338, 337, 337, 340, 342, 351, 358, 368, 383, 397, 416, 436, 465, 493, 533, 571, 623,
                    682,
                },
            },
        },

        /* bnr_lsc_gain_lut */
        {
            /* r_gain */
            {
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096
            },
            /* gr_gain */
            {
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096
            },
            /* gb_gain */
            {
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096
            },
            /* b_gain */
            {
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
                4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096
            },
        },
    }
};

static const ot_isp_cmos_acs g_cmos_acs = {
    /* acs_attr */
    {
        /* en */
        1,
        /* y_strength */
        256,
        /* run_interval */
        2,
        /* lock_en */
        0,
    },
    /* acs_calib_param */
    {
        /* light_index */
        {
            -1, 23, 10, 5, 4, 1, 5, -1, 6, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
            -1, -1, -1, 22,
            -1, 0, 10, 14, 3, 14, 5, -1, 2, 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
            -1, -1, -1, 23,
        },
        /* model_ar_min */
        -0.08f,
        /* model_ar_step */
        0.098f,
        /* model_ab_min */
        0,
        /* model_ab_step */
        0.28f,
        /* light_type_g_high */
        1,
        /* light_type_g_low */
        2
    },

    /* acs_y_shading_lut */
    {
        /* g_param_high_ct */
        {
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024
        },
        /* g_param_low_ct */
        {
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
            1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024
        },
    },

    /* acs_color_shading_lut */
    {
        /* avg_rg_map */
        {
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000
        },

        /* avg_bg_map */
        {
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000
        },

        /* prof_rg_map */
        {
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000
        },

        /* prof_bg_map */
        {
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000, 1.000000000,
            1.000000000
        }
    }
};

static const ot_isp_cmos_clut g_cmos_clut = {
    {
        1,
        128,
        128,
        128,
    },
    {
        {
            0,    3149813,    1046533,    3149814,    6299621,    9450452,    6299622,    9450451,   12602304,
            16802729,   12602303,   16803752,   22052752,   26255221,   21005198,   25206643,   30457689,   35708733,
            29409112,   32563005,   39910177,   45161223,   35714854,   38866705,   49362669,   54612692,   42017535,
            45168367,   60912311,   68261528,   48319196,   52519622,   75610743,    3149814,   57769646,    4198390,
            2095110,    9451475,    3143687,    9451474,    6299621,   15755175,    6300644,   14706598,   12603326,
            23110515,   11554749,   21012342,   19956621,   29416257,   17859470,   25219913,   26263385,   32572189,
            23116638,   26276652,   31519533,   34675465,   26273592,   25232160,   33624849,   37828337,   26279717,
            24187669,   35727104,    5246965,   24184604,    6295538,   39930592,    9451473,   25238283,    9451472,
            4192261,   13658024,    6290435,   11559850,    7349219,   17865595,    7349218,   14716804,   11554749,
            19973973,   10506174,   14727012,   15761298,   18932542,   13663127,   11587410,   18920295,   15788854,
            14722931,    7395148,   19978055,   12645170,   13681497,    2153291,   17884985,    8393711,    9491278,
            9443307,   14741301,    9451472,    4249419,    8402896,   11597614,    9461678, 1072749387,    7363507,
            7341055,   10520463,   10487801,    6323098,    8398816,    8430453,    9447390,    2134918,    9456575,
            4241254,    8408001, 1070637947,   10515358, 1071693666,    7367590, 1063299959,    9475969, 1065403234,
            4229007, 1054911353,    6336364,   11541479,      39808,   12591075,    1097571,    8402896, 1067493240,
            8402896, 1068548962,    5264313, 1059105655,    3166143, 1061208932,    2125734, 1050717050, 1071670194,
            12586995, 1070629783,   14685164, 1064333224,    9448411, 1063292815,   10496985, 1054899107,    7358404,
            1053856653,    6308808, 1045462946,    4219823, 1044420494,    1071032, 1034977187, 1072723870,   12592094,
            1068525484,   12593114, 1066436498,    7354321, 1060140965,    6304722, 1059099533,    2115526, 1050704802,
            16333, 1049663373, 1067471805, 1040220066, 1063274441, 1040226191, 1058037688, 1029734309, 1052790727,
            15735781, 1047553974,   15737822, 1040208840,   10498007, 1037068214,    9449430, 1027625931,    4210635,
            1025534905,    3161039, 1015043022, 1071665089,   11545558, 1068516298,    9449426, 1063279546,    5256147,
            1058032584,    4207572, 1052795830, 1071658963, 1046499271, 1069560794, 1042311094, 1059077076, 1033917385,
            1055929311, 1030777783, 1046495190, 1021334477, 1041248229, 1019243450, 1032863706, 1008751568, 1025519596,
            14690264, 1019232223,   11546577, 1010838515,    8400852, 1005600740,    6303699,  996157434,    2111443,
            6304718,    1061847,    3160010, 1065368531,    2109398, 1062220764,    1060823, 1052786645, 1067461600,
            1048588258, 1065362407, 1040203736, 1051731946, 1033908201, 1047534581, 1026572253, 1034952692, 1018178543,
            1029705730, 1012940770, 1019223038, 1003498487, 1011877903,  998260711, 1002443783,  987768830,  994050075,
            8402891,  974131202,    4209605,  946862085,    4207569,      15302,    2110416, 1071641611,    1060827,
            11225,      11232,    2102257, 1059071973, 1063264237, 1056972782,    8402898, 1043342319, 1043336192,
            1038096380,   16801708, 1026564089, 1023410193, 1020267529,   26254200, 1010832386, 1005581344, 1002439701,
            36754246,  985665539,  986704943,  985660448,   45154078,  961547264,  966778940,  931132416,   55650040,
            17343, 1070593036, 1068492823, 1073739785,      13263,    2102257,       2046,    3151855,       9188,
            8401877,    5252066,    8403918, 1053825015,   15751092,   12602304,   15756196, 1033896968,   27300735,
            21003156,   22060919, 1015019545,   40949569,   31504222,   26263385,  996143144,   54595340,   40953649,
            28366660,  977266741,   67192538,   50402060,   32567088,  899670016, 1072690186,   59850468,    2096132,
            1067443224,    3151856, 1071638548,    3151853, 1072694271,    8402896,    1050621,    7355341,    5252067,
            16803749,    5253088,   10511275,   11551685,   25207666,   11555770,   12617612,   19951519,   31509326,
            18908045,   12624758,   34649951,   36760369,   24162150,   12628840,   47248165,   43059989,   27316045,
            11583326,   60893939,    1046535,   30466874,    5244924,   73491137,    3151854,   33618724,    4202471,
            1069541398,    8403917,    1044494,    4209616,          0,   12609447,    2100217,    4216760,    5253089,
            17863553,    5254110,    3174308,   12603324,   19968871,    8409020,      33686,   21006220,   21022550,
            11564955, 1069584269,   28358495,   21026632,   12621696, 1065392006,   34659134,    3145728,   12626799,
            8392690,   39910180,    4201450,   11582307,    5252067,   47258373,    6306766,   10536792,    2111445,
            1072688146,    7364529,    6289414, 1071663047,    1050619,    7371672,    4199410, 1066424253,    5253087,
            6329222,    4205532, 1060135861,   10507194,    4235131,    4212676, 1052797872,   15761299,    1092466,
            3171246, 1045458861,   18916210,    6294519,    1079197,    9443304,   19970910,    5251045, 1071679377,
            4203489,   21024591,    3160018, 1067488137, 1072705499,   22077248,    1068992, 1062247300, 1064318935,
            3142667, 1071670193,    9438202, 1055932372,    3149814, 1066431398,    6297579, 1046496211,    5254109,
            1061190559,    3156956, 1037060051,    6310847, 1054901146,      16334, 1026575315,    7368612,    9442285,
            1068519362,    7347165,    7374734,    5252066, 1063279544,    3154911,    5282688,    1061848, 1056991154,
            1069557731,    2140022, 1068515279, 1049653166, 1058023398, 1072738159, 1061178312, 1042314156, 1045440491,
            8387584, 1053840324,   11538412, 1032857583,    6296558, 1045452737,    7347172, 1020274676,    4205532,
            1036017600,    2108382, 1007690746,    2114504,    8395747, 1068512217,    3154899, 1072716728,    4203488,
            1060125653,    1057757, 1069575083, 1071655903, 1051739091, 1067458538, 1064335266, 1061171167, 1042302930,
            1051727861, 1058045852, 1050686431, 1031817171, 1035996161, 1052805016, 1040200673, 1022381012, 1020266508,
            11537395, 1028667364,    9444317, 1004535830,    7347175, 1017133030,    5251038,  963636228,    3156957,
            5251032,    1058785, 1064295459, 1071659987,    2106334, 1064314852, 1070592014, 1064323019, 1068508134,
            1051731944,    2100215, 1056985030, 1054875630, 1039149037,    9448410, 1049647042, 1041243126, 1026566130,
            20996013, 1041259457, 1026562045, 1013982199,   33592188, 1031823296, 1012928517, 1001399292,   46187343,
            11539429,  988809218,    4203471,   58781478,    6299617,      10190,    2106328, 1067442205,    1058783,
            9181,       9188, 1071641610, 1066414047, 1065360366, 1059068912,    2102258, 1055929311, 1047531517,
            1043338235,    9451474, 1045443552, 1030751244, 1027607558,   16801708, 1033910242, 1015019546, 1011876881,
            25200521, 1023424485,  997191719,  998243355,   32549738, 1011890152,  980412467,  950002688,   39896909,
            7348182, 1063245862, 1061146670, 1070589974,    4203483, 1069543440, 1067443224, 1073740805,       9186,
            1050619, 1073740803,    2103278, 1061168106,    9447392,    5250026,    6305745, 1047535602,   22043568,
            14697413,   10509236, 1033903098,   37787511,   27293589,   14710683, 1019220993,   53530435,   39889765,
            16813958,  999296002,   69272339,   52484923,   19964786,  977273856, 1065344032,   65078035,    1044493,
            10184, 1071641612, 1064293415,    1050621,       9173,    2101236, 1069542420,    1055723,       9190,
            9450453,       1023,    2110422, 1056970741,   18898860,    5252067,    3165122, 1039140868,   29396866,
            13650879,    3170225, 1023409171,   39892828,   21001114,    2126754, 1005581344,   49339194,   28350329,
            1082261,  988802093, 1068491802,   35699547,    5240834,  920635392, 1072691207,   43046719,    2101238,
            1059048498,    2103280, 1069539358,       8169, 1066394651,    8402896, 1071640589, 1071656925, 1072692229,
            14704559,       3066, 1068514257,    5249007,   19955601,    4204512, 1064324039,   14695371,   25205624,
            8408002, 1061181375,   30439316,   29407072,   12609447, 1056989111,   46183260, 1072688145,   15762320,
            6293494,   60877610,          1,   18913148,    3150831,   76618492,    2104300,   22065001, 1072701418,
            1063244842,    5257171,    1042452, 1066412005, 1068492822,    7361467,    1046533, 1059074016, 1072693249,
            8416166,    1052661, 1052783581,    5251046,    9469844,    2107360, 1045445594,   14698433,   10523524,
            3162060, 1038106584,   24147862,    3142664,    3168185,    6294505,   34644847,    1051642,    2124713,
            2103273,   44092235,    1055722,    2128796, 1070603243,   53538601,      13273,    1083279, 1061167085,
            1066392610, 1072710601,    6288392, 1050681328, 1070590993, 1070618556,    3146748, 1040195571,          0,
            1068524464,    1054704, 1030758390,    5253089, 1066430374, 1072703459, 1020272633,   11553728,    5243900,
            1069561815,    3150812,   16805792,    2101235, 1066419148,    1055716,   22056836, 1072701417, 1063276483,
            1068506093,   27305836, 1068510177, 1059085243, 1054873590,   32555860, 1064318937, 1054894004, 1042288639,
            1071637529, 1059078098,    9437177, 1028655112, 1073738762, 1052788685,    4197363, 1015021585,    1051640,
            1047547848,    1054701,  981459971,    3155936,    6294511, 1069556711, 1054849090,    6309830,    3150828,
            1063267298, 1063243820,    8413104, 1071652843, 1055929311, 1070589975,    9467805, 1063265257, 1049638876,
            5244924,   10521484, 1054877672, 1042300889,   17837015,   11574140, 1046490088, 1034961879,   33577899,
            3140623, 1038102504,    7342057,   48270206,    3144705, 1029713897,    4199401,   64010067,    1053682,
            4198370,    1055722, 1059046454,      10209,    2103271, 1065361388, 1065343012,      15313, 1069554668,
            1055924207, 1072689168, 1071665090, 1058020338, 1045438449,    5245942, 1069570998, 1046484984, 1036001268,
            14692311, 1067477931, 1034949630, 1025515512,   25187252, 1064335266, 1022365700, 1015029755,   35683216,
            8386561, 1003488257,    3149785,   46178158,    4196343,       6101,    2103263, 1064292394,    1054702,
            7137,       7145, 1068491802, 1070605285, 1067457518, 1062213618, 1072690186, 1066414045, 1052775419,
            1048581115,    3150835, 1061174229, 1037042695, 1034947588,    9449432, 1055933391, 1023409171, 1022362637,
            15748030, 1050692554, 1008727071, 1008730134,   22046628, 1044403142,  994044971,  969923584,   29393802,
            8389617, 1052750919, 1050652748, 1068489759,    4198382, 1061145649, 1059046455, 1070590994,    1055723,
            1070587931, 1067441185, 1072692227, 1067458538,    5243903,    2093066,    1053681, 1059070952,   19934168,
            11540459,    3156958, 1050683368,   36724647,   25183170,    6307786, 1042295784,   54563701,   40924053,
            8411064, 1033908200,   72402757,   56664936,   11561894, 1024472041, 1056948284,   71356221, 1073735699,
            6294497, 1064293416, 1055898688, 1073739784,    3150820, 1071639571, 1062195245, 1071646717,       7146,
            5245945, 1068491802, 1071650801, 1063263215,   16789463,    2096131, 1070605285, 1051727861,   29382575,
            9445351, 1069560793, 1040193531,   41976711,   19940293, 1068516301, 1028657153,   55618400,   30435234,
            1067470786, 1011877890, 1061145648,   40930175,    4191236,  994050048, 1067441183,   51425117,    1049598,
            5073, 1072689165, 1061144627, 1071648760,       6107,    4198388, 1066392609, 1067456498,       8168,
            12595159, 1070590995, 1063264237, 1060116468,   20991928,    1049599, 1059071975, 1045433345,   29389722,
            6299622, 1054879714, 1029701645,   37786492,   12599243, 1049637854, 1016068121, 1066391589,   18897841,
            5242869, 1001386021, 1069541398,   25196439,    2100212,  941603840, 1072691206,   32543613, 1070601204,
            1047504978,    2102258, 1067439142, 1063261173, 1056948284,    6302683, 1069540377, 1055922165, 1065343014,
            11552708, 1071641611, 1047533558,    1043470,   15753134,       3067, 1040194552,   11539437,   19953560,
            2105319, 1032854521,   28328896, 1071637529,    5257172,    2099173,   46167950, 1072689165,    7359425,
            1052650,   64007005, 1071644672,   10510255, 1069553649,   81846061, 1072699377,   12612509, 1059066871,
            1052750918,      10209,    1041432, 1048580094, 1061144626,    1063889, 1073737742, 1037043717, 1068490782,
            2116546, 1073740803, 1025508365,    2095111,    2120628, 1071648759,  999285763,   10492905,    3141644,
            1070604267, 1043305572,   22037443,    1047555, 1069558751, 1054846030,   35680155, 1071647738, 1069562835,
            1065337910,   48273267, 1069553649, 1067468744,    4186139,   61914957, 1066410985, 1066424253,   17826810,
            1059045433, 1064315872,    5238791,   34614226, 1064293416, 1061173208,    3144705,   52451240, 1069541399,
            1059079120,       2043,   70289276,    1048577,    5241852, 1069552629, 1049601108,    8396774,    1050617,
            1065360367, 1059043393,   16793544, 1070600182, 1061168106, 1067438124,   25191337, 1065359347, 1056975845,
            4188181,   33588107, 1059068913, 1051735008,   13633528,   41984877, 1053827055, 1047541723,   27274199,
            1064292397, 1047536621,    7338997,   39866291, 1068490781, 1041246187,    3147764,   54555535, 1071640591,
            4195309,       4084, 1055897668,          0,    1052655, 1066406900, 1062193204,    4202470, 1070601203,
            1059067893, 1069537315,    9452495, 1061164022, 1051727862,    3141647,   13652921, 1051726842, 1044388855,
            9440247,   17853347, 1042289662, 1036000248,   18884572,   22053773, 1032850434, 1028660218,   28328896,
            1070586911, 1018168321,    4194275,   37774244, 1071639571,       2013,    1051623, 1062193205, 1072691207,
            5093,       6125, 1066390567, 1072696313, 1069553647, 1064309748, 1070588953,       8169, 1056969721,
            1053823995,    1045513,    1061849, 1044383747, 1042286594,    5245942,    1065930, 1031798797, 1031799817,
            9446370,    2118587, 1020262423, 1020264465,   15743949,    3171245, 1007677474,  988796928,   20991929,
            3139600, 1040157805, 1038059632, 1068488740,    2094087, 1052746836, 1048551513, 1069540378, 1072694271,
            1065335867, 1060091970, 1070592015, 1070600182,    4185118, 1071632425, 1072692228, 1068506093,   19923963,
            11528202, 1072697335, 1065363428,   38809552,   26220519,    1056745, 1063269340,   58743714,   43008957,
            2109404, 1060125652,   78679922,   61894546,    4209614, 1056982988, 1046453340,   79731558,    1042451,
            6289406, 1056945223, 1045404766, 1072689164,    3146747, 1066387505, 1053798475, 1071643654,       3064,
            4187160, 1063240759, 1068500991, 1068504053,   15730681, 1072683041, 1066405881, 1062213618,   30419925,
            9433094, 1065359346, 1055923184,   46158765,   19929064, 1063264235, 1050682350,   61897605,   33569733,
            1061170148, 1044391916, 1052748876,   47211425,    4191232, 1038101483, 1060094010,   60852093,    2097150,
            6291436, 1068487720, 1052748877, 1070598141,    2099181,    3140625, 1059045436, 1065356284,       5105,
            11536375, 1065340972, 1060114427, 1065358324,   23078873, 1072686105, 1054872570, 1056969720,   34622394,
            6289411, 1049629690, 1047532540,   46164889,   14686186, 1044387833, 1038093312, 1059045436,   23082958,
            3144685, 1025509377, 1064291373,   32527282,    1050608, 1011874816, 1069539358,   41972629, 1070601205,
            986,    2093068, 1060094011, 1062211577,       4064,    7343094, 1064291374, 1053822974,       7146,
            14689247, 1068489760, 1045432323, 1063262196,   22036423, 1072688145, 1037042697, 1050677246,   29383598,
            2097152, 1016062978, 1038091272, 1065340973,    7346156, 1031761034, 1026554898, 1067441185,   12595160,
            1045398641, 1013969949, 1070589972,   17843139, 1061134422,  963622912, 1073739782,   24140718,    3128377,
            1033863288,    2101239, 1067438121,   19913753, 1046452321,    5251046, 1068489759,   37749748, 1059041352,
            9450453, 1070589973,   57682892, 1071631405,   12601283, 1071641610,   78665634,   12575756, 1071636508,
            1071646718, 1039107189,   29366246, 1071639571,       6128, 1050646624,   48251833, 1071641611,    1058787,
            1063234633,   68187018, 1069547521,    3158997,    2081841,   88123226, 1069551608,    5260231,   16769045,
            1041208423, 1069554669,    2090006,   30409717, 1051699282, 1069557731, 1073736720,   46147539, 1061141565,
            1069560793, 1072690185,   62933935, 1071633445,    3141641, 1069547523, 1046452320,   10480648,    1046534,
            1067453436, 1055893582,   23074791, 1070596098, 1065358325, 1065335868,   38813633, 1067452414, 1064311790,
            1036327,   54552474, 1063260154, 1062216679,   12576784,   70292337, 1060115446, 1060122592,   22022134,
            1048552533, 1055923186,    5237761,   34612186, 1056946243, 1052778479,    3144703,   46153662, 1064290353,
            4193270,       2046, 1053797452, 1072685085,    1050615, 1068502013, 1061141565,    7336964, 1070599161,
            1063259131, 1067437102,   17831913, 1064308730, 1058017275, 1073732638,   28325834, 1056968700, 1052775418,
            7335948,   39869353, 1050677247, 1047532538,   14682104,   51411849, 1043336193, 1042290681,   22028258,
            1055897668, 1032848385,    3142636,   30421964, 1061144629,    1047523,    1049582, 1062192183, 1067439142,
            3049,       4082, 1065340972, 1072687125, 1071650800, 1066405879, 1068489761,    5241857, 1061164023,
            1058017275, 1072687125,   10491883, 1050676223, 1049626624,    3143688,   17839059, 1040188424, 1041236998,
            6293497,   25185210, 1030749200, 1031799820,   10491882,   32532386, 1020262425, 1008720896,   14690267,
            1063241778, 1027563668, 1024417942, 1069538337, 1066390567, 1043299449, 1038055549, 1070588954, 1069540379,
            1060083805, 1052741732, 1070590995, 1071640589,    3126334, 1068477512, 1070593036,          0,   22009883,
            11521066, 1071643652,    3151854,   41944052,   29352965, 1070599163,    7351261,   63974344,   48240608,
            1071649779,   10501068,   86006683,   68173751, 1072700395,   14700475, 1034909824,   88107916,    2092043,
            1071635488, 1048547432, 1032812672,    1045513, 1071637527, 1062185040, 1045400682, 1071642630, 1071640591,
            3129397, 1056941141, 1068498947, 1070595078,   17817623, 1069529149, 1065354241, 1069549565,   34604021,
            9425955, 1062210558, 1069552627,   52438991,   23063556, 1059065852, 1069555688,   70274985,   37754852,
            1056968698, 1069558750, 1043303531,   54540225,    2094068, 1069561812, 1053794391,   70279069,    1049590,
            4189195, 1064285250, 1042255977, 1072696313,    2094087,    2083884, 1051697239, 1066404859, 1073740804,
            14672914, 1060090949, 1060113406, 1068499968,   26216438, 1070581810, 1053820929, 1065356284,   39855063,
            6282268, 1047528453, 1062212600,   54544310,   16773123, 1033890817, 1058019316, 1050649686,   28316649,
            1018119345, 1054874608, 1057993798,   40907724, 1037000852, 1050682349, 1066386485,   52449199, 1055881335,
            4191222,    1038371, 1050650707,    2070616,    3145719,    9432078, 1057993797,   22001719,       3064,
            18876407, 1064289334,   42981395, 1067453434,   28319710, 1070584870,   65012717, 1061163003,   38812613,
            4187157,   88090564, 1053822973, 1057994817,   11532289, 1027563671, 1046481920, 1063240757,   17830893,
            1043297407, 1038091265, 1068487720,   26225623, 1059032166, 1027604480, 1073734681,   34619329,    1025100,
            1046497,    5239818, 1060094012,   17809456,        998,   10487800, 1063241777,   35643409,       5101,
            15735782, 1067439143,   52429808, 1066406900,   23080916, 1070587931,   71312334, 1055920123, 1065340972,
            1044494, 1037006973, 1045432323, 1067440163,    4193280, 1049594985, 1034944524, 1069540378,    8392690,
            1061134421, 1025506325, 1071639568,   12591075,    1029183,  986691584, 1073739782,   16789460,   13618216,
            1019172002,    1051642, 1069537317,   28304398, 1034907783,    4200431, 1069539358,   40895475, 1051691115,
            6300643, 1070589975,   55582679, 1068475470, 1073734678, 1070592016, 1046451300,   12568621, 1072688146,
            1071642632, 1054843988,   32498694, 1071641613, 1070596096, 1064285251,   52434910, 1069545480, 1071648759,
            1073726514,   74466226, 1067450370, 1071650799,    9426975,   97547140, 1066404861, 1072702439,   19917835,
            1028615307, 1065357304,    3139597,   29361142, 1042252916, 1064310770,    2093066,   39853024, 1054840924,
            3141632, 1073739783, 1054847050, 1069528131,    2097151, 1070595077, 1061141566,   10473510, 1071645695,
            1066401794, 1067436082,   26208261, 1067452415, 1063258111, 1072682021,   42997730, 1062209535, 1061161981,
            5235735,   60832700, 1058015232, 1058017275,   12578824,   79717269, 1053820929, 1054872569,   17826809,
            1038058612, 1047528448,    3141620,   25170921, 1048549473,    1046505,    2096117, 1064291376, 1059040333,
            2029,       2039, 1067439144, 1069531192, 1072698354, 1069550586, 1069538336,    8378400, 1065357303,
            1063259132, 1072686104,   19918851, 1056968701, 1056966656,    1044495,   33559526, 1049625603, 1050674179,
            4192261,   47200199, 1041235978, 1044382727,    6293500,   61888422, 1033894929, 1027597312,    9441266,
            1046453342, 1013921981, 1009727679, 1073734678, 1054846030, 1033852063, 1027559586, 1072688146, 1062190142,
            1054830720, 1046441094, 1071640591, 1070582828,    2068574, 1065322600, 1071641611,    5234713,   24096827,
            11511880, 1070594055,   13628418,   47174676,   32491558, 1069547523,   23073771,   71303147,   54520832,
            1068500991,   33566674,   95431615,   76551128, 1068502012,   44058552, 1023365284,   98581424,    2093052,
            1055896647, 1040148617, 1020220579,    1047548, 1060094011, 1056932975, 1035954315,       2045, 1065339950,
            1024082, 1050640499, 1069549566, 1070586913,   19905587, 1066375257, 1065355263,    2092050,   39836690,
            9417790, 1062208512,    7339009,   58721262,   26202144, 1058014211,   13636591,   79701961,   45083648,
            1050670081,   19933149, 1032809610,   61871071, 1005526231,   26228683, 1046446196,   80753596, 1028602040,
            1065339952, 1060083805, 1030713479, 1050629272, 1066390568,    1027141, 1043301491, 1073706103, 1068489759,
            15714348, 1055889503,   24088661, 1070589973,   31449104, 1067428938,   48215089, 1072690187,   47186929,
            7323700,   73390091,          0,   63971282,   20961307,   98566116,    3149813, 1041205360,   34598912,
            1016020153,    5250025, 1052743775,   48238565, 1034900638,    8399837, 1063234636,   62925769, 1054829699,
            1073734681, 1073724473, 1041206380, 1073710183, 1072687124,   11522084, 1050647644,   19898442, 1071640591,
            24111117, 1060088908,   39828523, 1070593034,   35652597, 1069530171,   60808203, 1069546501,   48241628,
            5229609,   82837482, 1067451392, 1050648663,   14671894, 1027562650, 1066404858, 1057992777,   25162752,
            1042247812, 1065358325, 1065335867,   34607083, 1057981550, 1064311792, 1073728556,   46146517, 1073715286,
            3140608,    7330843, 1052747856,   15708222,    2095103,   15724554, 1057993796,   32491557,       1023,
            24118263, 1064288312,   49274891, 1069549567,   32511973, 1070583852,   66060272, 1065355263, 1060092989,
            2087966, 1038056572, 1060111360, 1064290355,    9432080, 1049594986, 1055918080, 1068486697,   15726592,
            1061133400, 1049625600, 1072684062,   20974577, 1073720390, 1044381696,    3139603,   28318689,   12566578,
            1043432,    8385543, 1063241780,   25154590,    1048555,   12583930, 1065340972,   37742601,       4079,
            17830894, 1068488740,   51380212, 1069552628, 1068488739, 1070587932, 1048550494, 1061163002, 1069539357,
            1073735699, 1056942160, 1052772352, 1070588951,    3142666, 1065333827, 1045431303, 1071639569,    5241856,
            1073725493, 1038089230, 1072690187,    8391671,    8376358, 1008714752,    1047556,   11539438,   17817623,
            1004480716,    1050621, 1073734680,   27257863, 1024410798,    2100215, 1072687124,   36700151, 1044340879,
            2092041, 1072688145, 1059044416, 1065320559,    1045511, 1071641613, 1063240758,   12558413, 1073739782,
            1071642633, 1068485677,   35636264, 1071643652, 1070595077, 1073731619,   59762688, 1067450371, 1069547521,
            5234713,   82843605, 1065353218, 1068500989,   10480655,  108019625, 1063257089, 1068502010,   16774149,
            1014973617, 1061159936,    2092028,   20972539, 1031756951,    1044463,    2095100, 1068489761, 1048541308,
            1048560,       1020, 1070587932, 1066373217,       4084, 1071646717, 1072686103,   10464323, 1069551607,
            1067452414, 1073736722,   29346851, 1063260155, 1063257088,    2093069,   49277952, 1058016255, 1060111361,
            4192263,   69211100, 1051722756, 1055917060,    6290434,   90191798, 1046478858, 1046473728,    7341054,
            1025466517, 1000279271,  995036391,    2092035, 1039104127, 1024403653, 1017063624,    1045506, 1052740713,
            1048529059, 1039090856,    1047553, 1067425874, 1073703039, 1062167688, 1072693248,    8370233,   26184795,
            11501670, 1071644672,   24106014,   52408372,   35628099, 1069547520,   39841792,   79680523,   60802078,
            1068498944,   55579618,  106954721,   85978104, 1066400768,   72363971, 1010773192,  111154128,  992932094,
            1035960441, 1031750827, 1007628486, 1019154652, 1046450280, 1052729486, 1025460396, 1045377209, 1057988693,
            1073708143, 1045389457, 1072647318, 1068479555,   21993552, 1064269941,   25128051,    6277166,   44021806,
            9409625,   53448783,   17816600,   67098635,   30388283,   80719914,   30405632,   90177511,   50318363,
            109040643,   41947112, 1022315690,   72347643, 1005525211,   54536143, 1039098001,   92278746, 1027551422,
            1047501918, 1055881336, 1019170982, 1049578656, 1054845008, 1073713247, 1034904719, 1072653442, 1062189122,
            17803332, 1050638457,   21987428, 1069532211,   36684840, 1066373218,   45063237,    4183076,   55566347,
            8365131,   69187622,   11527187,   74448877,   24099890,   92263430,   19920896, 1032809611,   40883224,
            1017068728,   28315630, 1046445175,   57667581, 1035948191,   36708315, 1060081763,   74451938, 1054828679,
            1057994818, 1073718350, 1031763077, 1073709166, 1062192184,   14661688, 1043301491,   18846805, 1066388526,
            29346850, 1055888481,   37727291, 1070585892,   44033034, 1067426895,   56607778,    1041433,   58720242,
            6273084,   76535816,    6287373, 1043303533,   18860072, 1029660821,   10484736, 1052743773,   31448084,
            1044345985,   14683124, 1063233613,   45085695, 1059030125,   19929064, 1073723453,   56625129, 1073715289,
            1068487718,   10471468, 1044354148,   14657605, 1069538336,   22009883, 1052745815,   30391345, 1070588954,
            32500744, 1061137482,   46124060, 1071638548,   44040182, 1069530172,   60809223, 1072689166, 1053797455,
            4180013, 1041204338, 1073739783, 1060090947,   13621278, 1052742755,          0, 1067434040,   22012943,
            1063231571,    2100218, 1073728556,   31455231,    1028164,    3149812,    7329824,   39847920,   12565557,
            2091018,   14672915, 1055897668,   23055397,    1044488,   22016006, 1061142587,   34592790,    1046535,
            29360121, 1066387506,   47179782, 1072692229, 1064291377, 1071632424, 1052748879, 1069546499, 1067438121,
            3136542, 1060090948, 1066401794, 1070585890,    8381460, 1067434042, 1064305665, 1073733659,   13627402,
            2082863, 1062208512,    4188179,   18872320,    9425956, 1060111360,    7335947,   24119286,   16768025,
            1042414,   11532292, 1068488740,   25158670,    1046511,   13632508, 1069538335,   33550339,       2034,
            1073736722, 1071637530, 1064292396, 1071648757, 1073737743, 1072687124, 1068487718, 1066405881, 1073737740,
            1043471, 1072684064, 1061161981, 1073738761,    3142666,    3137561, 1054868482, 1073739782,    5240837,
            7333907, 1049624583,    1047556,    7339008,   11529228, 1031788544,          1,    8390652,   15725574,
            988740855,          0,    2091012,   19920896, 1012865238,    1044468,    1044482,    2094090, 1036990644,
            1047540,    1046529,    3143688, 1061116049,       1013,          1,    3143685,   12548205, 1072697336,
            1072693248,    4193283,   38771784, 1069550585, 1070596096,    4193281,   66043936, 1066404860, 1069547520,
            4195327,   93318134, 1063258111, 1067450369,    5243902,  120591308, 1060110339, 1065352192,    6292478,
            1001331927,  986636560,  979296528,          0, 1021262010, 1014956267, 1006567661,          0, 1042240668,
            1043275974, 1032790219,          0, 1063219326, 1072644257, 1059012776,          0,   10456160,   27223163,
            12541061,          0,   32483391,   56592468,   38763617,          0,   55560221,   87010347,   67084348,
            0,   78638073,  118476802,   95404054,          0,  101715925,  999228653,  123725808,          0,
            1012875446, 1023353037,  993986794,          0, 1030706333, 1047477421, 1016014028,          0, 1047489669,
            1072650380, 1039088815,          0, 1065321580,   24082540, 1061116049,          0,    9411666,   49255498,
            10450035,          0,   27243574,   74429480,   33525845,          0,   46125082,  100652037,   56601654,
            0,   65007612, 1010772169,   80726038,          0,   82840542, 1031749806,  104851446,          0,
            1025466517, 1052727443, 1007628484,          0, 1039103105, 1072656504, 1026508971,          0, 1052739693,
            19893340, 1045388435,          0, 1066375257,   40870976, 1064268922,          0,    7318595,   62897188,
            9406561,          0,   22004781,   83875847,   28287048,          0,   36689942, 1023365286,   47167535,
            0,   51377150, 1040147600,   67096597,          0,   65014758, 1056929914,   85977083,          0,
            1038058613, 1073712228, 1022318750,          0, 1048547429,   16752717, 1037002891,          0, 1057988693,
            33535030, 1051688055,          0, 1068478533,   51365919, 1066372195,          0,    5226549,   68148232,
            7315535,          0,   15716387, 1034908803,   23048251,          0,   27254801, 1048544370,   37733414,
            0,   37746687, 1061131360,   53467154,          0,   48236524, 1073718351,   69200893,          0,
            1050649684,   13612093, 1035960441,          0, 1056944201,   27247659, 1046449258,          0, 1063238718,
            39834649, 1057987675,          0, 1070581810,   53470215, 1068476492,          0,    3133478, 1047500896,
            6272061,          0,   10477593, 1055892563,   17810477,          0,   17820685, 1065332807,   29348893,
            0,   25163776,    1031226,   40886286,          0,   31459315,   10471468,   52425726,          0,
            1062193204,   19911711, 1049601108,          0, 1065340973,   30400530, 1056944202,          0, 1068487718,
            39840772, 1064286271,          0, 1072684062, 1059044414, 1071629364,          0,    2090007, 1064289333,
            5229609,          0,    5237775, 1070582829,   13621279,          0,    9434119,    2085924,   20963348,
            0,   12581888,    8379419,   29355017,          0,   15730681,   14672915,   36698110,          0,
            1073735700,   19917834, 1063242800,          0, 1073736721,   26211330, 1066390569,          0, 1073737742,
            1070587931, 1070585891,          0, 1073738763, 1072686103,    1040412,          0, 1073739784,    1043474,
            5235734,          0, 1073740805,    3141646,    9432079,          0,    1047554,    5239818,   13627401,
            0,          0,    8386566,   17822723,          0,       1023,   10483714,   22020093,          0,
            1042420,   13631487,    2093067,          0,    1045492,    1044473,    3142665,          0,    1048565,
            1045496,    3143687,          0,       3062,    1047543,    3144708,          0, 1071647736,    1048567,
            4193282,          0, 1068502011,       1015,    4194304,          0, 1064307710, 1072694264,    4195327,
            0, 1061159937, 1072694265,    5243902,          0, 1054863360, 1072694268,    6292477,          0,
            972999971,          0,          0,          0, 1001320701,          0,          0,          0, 1029640408,
            0,          0,          0, 1057960115,          0,          0,          0,   12539022,          0,
            0,          0,   41907303,          0,          0,          0,   72325184,          0,          0,
            0,  102744086,          0,          0,          0,  133162989,          0,          0,          0,
            986641661,          0,          0,          0, 1010766045,          0,          0,          0, 1035940029,
            0,          0,          0, 1060064413,          0,          0,          0,   11495548,          0,
            0,          0,   36669531,          0,          0,          0,   61842489,          0,          0,
            0,   88065046,          0,          0,          0,  114288627,          0,          0,          0,
            1001331927,          0,          0,          0, 1021260988,          0,          0,          0, 1042238625,
            0,          0,          0, 1062167686,          0,          0,          0,    9404522,          0,
            0,          0,   30382159,          0,          0,          0,   52408370,          0,          0,
            0,   73387030,          0,          0,          0,   95414265,          0,          0,          0,
            1014973617,          0,          0,          0, 1031755931,          0,          0,          0, 1048538245,
            0,          0,          0, 1065320559,          0,          0,          0,    8361048,          0,
            0,          0,   25143362,          0,          0,          0,   42974251,          0,          0,
            0,   59757587,          0,          0,          0,   77589500,          0,          0,          0,
            1028615308,          0,          0,          0, 1042250874,          0,          0,          0, 1054837865,
            0,          0,          0, 1067424856,          0,          0,          0,    7318598,          0,
            0,          0,   19905588,          0,          0,          0,   33541154,          0,          0,
            0,   47176720,          0,          0,          0,   60813310,          0,          0,          0,
            1042256999,          0,          0,          0, 1051697242,          0,          0,          0, 1061136461,
            0,          0,          0, 1070576704,          0,          0,          0,    6275123,          0,
            0,          0,   15715366,          0,          0,          0,   25155609,          0,          0,
            0,   34595851,          0,          0,          0,   45085694,          0,          0,          0,
            1055897666,          0,          0,          0, 1062191161,          0,          0,          0, 1067436081,
            0,          0,          0, 1072681000,          0,          0,          0,    5232672,          0,
            0,          0,   11526167,          0,          0,          0,   16771086,          0,          0,
            0,   23064582,          0,          0,          0,   29359102,          0,          0,          0,
            1069539358,          0,          0,          0, 1071637529,          0,          0,          0, 1073735701,
            0,          0,          0,    2092048,          0,          0,          0,    4190220,          0,
            0,          0,    7336968,          0,          0,          0,    9435140,          0,          0,
            0,   12581889,          0,          0,          0,   14680061,          0,          0,          0,
            1043449,          0,          0,          0,    1044472,          0,          0,          0,    1046519,
            0,          0,          0,    1047543,          0,          0,          0,       1015,          0,
            0,          0,       1015,          0,          0,          0, 1072694264,          0,          0,
            0, 1072694266,          0,          0,          0,          0,          0,          0,          0,
            1071640590, 1072693248, 1071640590,          0,    2102258,    5252067,    3150834,    5252066,    9451474,
            12602303,    9451473,   12603325,   16802731,   21003158,   16803752,   21004176,   25204605,   31504223,
            25206646,   29408090,   36755264,   43054884,   33609537,   37810987,   48305929,   54604528,   42010392,
            45161222,   60903125,   67202746,   49360628,   53561056,   74549918,          0,   58810058,    1049599,
            1072689166,    6301665, 1073737741,    6301665,    3150834,   12603323,    3150833,   11555770,    8403919,
            19957644,    8403919,   17860492,   15756197,   27311960,   14707620,   24165215,   24159089,   32565044,
            21012341,   26270529,   30463812,   35717917,   25217870,   27324210,   34666278,   40967940,   27322168,
            28376866,   37818131,    2098174,   27325228,    4196347,   43070195,    6301664,   29428504,    6301662,
            2094091,   10507195,    4191240,    9457596,    4200431,   15762321,    5249005,   12614552,    8403918,
            18919275,    7355342,   13672312,   13658022,   19974994,   11560874,   12629860,   17864573,   17881926,
            13668231,    9487194,   19971933,   16835389,   13676397,    6343508,   18928459,    5245944,   11583326,
            7344116,   17882946,    6302685,    8439639,    6302684,   16837431,    7360446,    4247378,    6310850,
            6289412,    8418208,    8388607,    5269417,    6298603,    8425351,    7347176,    2129813,    7355342,
            5284726,    6306767, 1071682441,    8413103,    1093486,    5266357, 1066441602,    8422290, 1069594474,
            4224926, 1060152191,    7379837,    8393711,    1084302,   10491882,    3189617,    6302682, 1069586309,
            6302682, 1072739180,    4212678, 1063296896,    3163082, 1067497321,    1073075, 1057006463, 1071666109,
            10487802, 1070625700,   11537395, 1065378738,    7348197, 1064337306,    8397794, 1058041772,    5257168,
            1058047894,    4208594, 1049654185,    3167164, 1049660308,    1067971, 1040218024, 1072719787,   10492902,
            1068522423,   10493921, 1067482014,    6302681, 1061185454,    5254105, 1061192599,    1063887, 1053848490,
            14292, 1053854613, 1067469766, 1045460904, 1064320976, 1046515604, 1060131776, 1036024744, 1053837262,
            13636588, 1050696637,   13637605, 1043352525,    8397791, 1041260476,    8398813, 1032867791,    3158996,
            1030775741,    3158998, 1021333457, 1071662026,   10494940, 1068514258,    8398807, 1064325059,    4205529,
            1059079118,    3156954, 1054889918, 1071657945, 1048594381, 1069558750, 1045454780, 1060124633, 1038109646,
            1056975843, 1036018620, 1048590299, 1026576336, 1043344360, 1025533885, 1037056990, 1015042002, 1029712878,
            12591070, 1024474081,   10494935, 1016080372,    7350234, 1011891173,    6301656, 1001400314,    2109401,
            6302675,    1059804,    3156942, 1066415065,    2108378, 1063267296,    1058778, 1054881754, 1068509155,
            1049635813, 1066410984, 1042299868, 1052779500, 1036004331, 1049631733, 1030765535, 1038098421, 1022371825,
            1032851457, 1018182627, 1022368766, 1008740343, 1016072205, 1005599719, 1007686662,  995108861,  999292952,
            8399825,  981470210,    4206538,  955248644,    4205526,      12234,    2108372, 1068492821,      10207,
            10203,      10210, 1072694271, 1060120552, 1064311790, 1058021359,    5251046, 1045438448, 1045434366,
            1041242107,   12600261, 1030757369, 1027604494, 1024461831,   23100308, 1015026690, 1009776669, 1007682579,
            34648930,  993004547,  991947819,  991951902,   46194487,  969934848,  974119992,  940567552,   56691472,
            13252, 1067444248, 1065344034, 1070590995,      11218, 1072693248, 1071641611,          0,       9189,
            4201449,    2102259,    5253089, 1054873590,   11549645,    8400855,   11554748, 1035995142,   24146842,
            17850286,   18907026, 1019214870,   39892829,   29398906,   25207665, 1001386020,   53538599,   40946508,
            30457686,  982509617,   67183351,   51443491,   35707710,  910152704, 1069542420,   61939452, 1073738764,
            1064294436,       2046, 1068490781,    1051641, 1070593036,    5252067, 1072691208,    4205534,    2101237,
            12602303,    2103280,    8409022,    8399836,   22052753,    8402896,   11562913,   16798647,   30452584,
            15755175,   13667209,   31496058,   37801799,   22057857,   14720887,   47240001,   46199591,   28357475,
            15774568,   60885775, 1071640592,   33607498,    3143684,   74529504,    1050619,   38857521,    2102259,
            1066392607,    5253087, 1072687125,    3156958, 1071641609,   10506172,    1047555,    3163079,    2102257,
            15759256,    3151853,    3170227,    8401875,   19961724,    6306766,    1077155,   17851304,   23113575,
            10510255, 1072725911,   26253179,   25216851,   12615572, 1070631822,   34651991,    1045513,   14718847,
            6293498,   42001207,    2101238,   14723951,    3151853,   50397975,    4205534,   15776608,    1059807,
            1069540377,    6310850,    3141645, 1071659986, 1073739782,    7366570,    2099196, 1067469767,    3151854,
            7372694,    3153897, 1062229950,    7355342,    7376775,    3160018, 1056989111,   13657002,    6332283,
            3167165, 1051748274,   17861513,    5241856,    2123691,    7344111,   21014385,    3150831,      30621,
            3152872,   24165213,    2108382, 1071679378, 1072703459,   27317065,      16332, 1068536713, 1065365470,
            1043473, 1071666109,    8386561, 1058027482,    1048576, 1068524465,    5246963, 1049639896,    3152875,
            1065381799,    2105318, 1041252310,    5258192, 1061190560, 1072706521, 1032864726,    7363509,    7343093,
            1069564876,    7345123,    7369631,    4201450, 1065373634,    3152868,    7374734,      10209, 1060133818,
            1070605287,    6330241, 1068512216, 1053844405, 1059070954,    5285749, 1062223825, 1048603568, 1048585197,
            6288391, 1055934411,    9439219, 1037050865,    4197368, 1049644999,    5247979, 1025516533,    2105319,
            1042307012,    1056741, 1013982201,    1062869,    7345129, 1069558752,    3152855, 1072712644,    3152870,
            1061172188,    1056737, 1070619575, 1071653861, 1053834201, 1067458540, 1066429356, 1062217700, 1045446615,
            1052776438, 1063286692, 1052781540, 1037059030, 1039141888, 1058045853, 1043345380, 1028671446, 1024460810,
            9438202, 1033909222,    8392675, 1009778708,    5247983, 1023423464,    5248995,  973072388,    2105317,
            5248989,    1056742, 1060097074, 1071656924,    2105314, 1064313832, 1066393628, 1065368532, 1068507113,
            1053828075, 1073739783, 1059079118, 1055924208, 1042293743,    7346156, 1052789705, 1043340279, 1031807987,
            18891716, 1045451717, 1030756350, 1020273655,   33585045, 1038113731, 1018171396, 1008739324,   47228775,
            9440235,  996148225,    4200404,   60871485,    5248999,       8146,    2104284, 1063244841,    1056741,
            8159,       8166, 1068492823, 1067460580, 1066408942, 1060117489,          1, 1058024420, 1050678268,
            1046483963,    7348197, 1048588260, 1033896969, 1031801861,   15747011, 1038102501, 1019214870, 1017119759,
            24144799, 1028666343, 1003484195, 1002438680,   33592189, 1018180585,  986703919,  959438848,   43037533,
            6296540, 1057998902, 1055899708, 1067441184,    3152863, 1065344032, 1063245863, 1071640591,       8166,
            1072690187, 1070590994,          0, 1062215660,    7345136,    3147771,    5252066, 1049631731,   20988869,
            12594137,   10503111, 1037047802,   37780368,   26237868,   14704557, 1024462849,   54570845,   39882622,
            19954581, 1005586434,   70312749,   54574930,   24155006,  985661440, 1061146670,   68217640, 1071638550,
            7117, 1067443225, 1060096050, 1073739784,       8152,    1047556, 1066392608,       4087,       8167,
            7347176, 1071641612,    1057764, 1058019317,   17844163,    3149812,    3161040, 1042286595,   29389722,
            11547604,    4214718, 1026555920,   40934258,   19946417,    5268397, 1010825245,   52478797,   29392782,
            6322078,  995093545, 1065343012,   38839149,    3141642,  931119104, 1069542419,   47236941,    1049599,
            1053801537,       1023, 1065341992, 1072698355, 1062196267,    6300643, 1069541399, 1071653863, 1069541398,
            12601284, 1072691207, 1069559771,    2098175,   19949478,    2103280, 1067466704,   13641692,   27297673,
            7353301, 1064324038,   28336043,   33596269,   12604346, 1062229949,   46176118, 1069540379,   17854369,
            6291453,   61918020, 1072690188,   22054793,    2100215,   78707477,       3066,   27304818, 1071650801,
            1057997879,    3154915, 1071636509, 1066409964, 1064294436,    6307787, 1072689167, 1061169127, 1071640591,
            9459637, 1072693248, 1055928290,    3148791,   12611489,    1054702, 1049637854,   11546582,   15762318,
            2109402, 1044397019,   23092142,    1043472,    4212679,    5244911,   34637702,    1047555,    5266357,
            2101231,   46182239,       4085,    6319013, 1070602224,   57726779,       9189,    6324118, 1062214641,
            1063243821,      14293,    3140624, 1052777459, 1067442204, 1072711623,    2095109, 1044388853, 1072690186,
            1071667129,       3065, 1034951671,    3150834, 1070622637, 1071651821, 1026564089,    9450452,    4192260,
            1070607329,    2100192,   16799669,    1050619, 1068513237,    1053671,   23099287, 1072698354, 1066420171,
            1069553647,   30447483, 1068507113, 1063277505, 1056969719,   36746080, 1065364449, 1061183416, 1045434367,
            1068488739, 1061173209,    7336960, 1032849415, 1070590995, 1056980946,    3146746, 1020265487, 1073740803,
            1052789708,       4084,  989848579,    2103279,    5243894, 1069554670, 1049602131,    5256151,    2101235,
            1064313833, 1059044413,    8408000, 1070602224, 1059072996, 1068487718,   11559851, 1064311790, 1052782560,
            5237771,   13663127, 1056972781, 1047541725,   17831913,   16813956, 1049633771, 1041252313,   33571776,
            1041431, 1042294763,    7340015,   50360212,    1045514, 1034955754,    3148783,   67149672,       2044,
            4196327,       6127, 1054848069,       7149,    2102251, 1066407920, 1062193202,      11229, 1069553647,
            1058020338, 1069539358, 1072709582, 1059067892, 1048583156,    4192261, 1072713664, 1049630713, 1040194550,
            13638632, 1071669171, 1038095358, 1030758392,   25182150, 1070624679, 1027608579, 1021321210,   37774242,
            5238792, 1010828289,    3147742,   50367359,    3145727,       4057,    2101219, 1060095031,       4087,
            6115,       7147, 1065341991, 1070603246, 1068506095, 1063262195, 1070589974, 1067460581, 1054872570,
            1050678267,    3144705, 1063268317, 1041238021, 1039141891,    9444328, 1059077077, 1027604496, 1026556939,
            16791501, 1054884815, 1013970971, 1015021587,   25188274, 1050693577, 1000337446,  979360768,   33584023,
            8388600, 1046454361, 1044356189, 1065341994,    4196340, 1056946242, 1053799496, 1068490780,       5106,
            1067438123, 1063241778, 1071640590, 1067457519,    5236750, 1073733658,          0, 1061167085,   18880490,
            10486780,    4201450, 1053828076,   37766077,   25177045,    8401878, 1046489067,   56653708,   41966506,
            11552707, 1039150058,   75540316,   58754942,   15752111, 1031811050, 1051701324,   75544402, 1071636507,
            5243879, 1060095031, 1050651726, 1071639569,    3149801, 1069537314, 1057996859, 1071642630,       6125,
            5238792, 1066390568, 1071647739, 1064310770,   15734761, 1073736723, 1071651822, 1053825014,   29376451,
            8391672, 1071654881, 1044386811,   44067739,   19934167, 1072707540, 1032851456,   58758003,   31477684,
            1072711624, 1018169345, 1056947262,   44070800,    3141643, 1003486208, 1064292396,   56662893,    1046533,
            3029, 1070588954, 1056947263, 1070598143,       5085,    4192259, 1063242799, 1067454457,       7145,
            11541480, 1068489759, 1065359347, 1061165044,   20986826, 1073737740, 1062215660, 1047531519,   31481770,
            6295541, 1059071974, 1033896970,   41975691,   13642715, 1055928289, 1021312022, 1063242800,   20989888,
            4193274, 1007678497, 1067441186,   29385636,    1050617,  953137152, 1071639570,   37782409, 1070599161,
            1041208421,    1049599, 1064291376, 1064308728, 1051700302,    7347177, 1067440163, 1058018296, 1062192183,
            12597202, 1070589973, 1051726840, 1072684062,   18894778, 1073739782, 1045436409,   11535358,   25192355,
            2101236, 1038096377,   28322772, 1068488739,    6301664,    3145705,   47210405, 1070589975,   10501069,
            1051629,   66097012, 1071641610,   13652921, 1070601203,   84984644, 1072695292,   17852325, 1061164024,
            1047503958,    1055724, 1071635488, 1050677246, 1055897666,    3157980, 1071638550, 1041238020, 1065340973,
            5259212, 1071641612, 1031799819, 1073735702,    7361468, 1070596097, 1007674370,    9439225,    1042452,
            1071649780, 1037009015,   23079894, 1072690187, 1071652840, 1050646623,   36722607, 1071643651, 1071656923,
            1063235654,   51412871, 1069550586, 1072709582,    3132458,   66103135, 1068505072, 1072713666,   18868232,
            1053799495, 1067459559,    3139598,   35657700, 1061144629, 1065365469,    2094088,   54542266, 1067440164,
            1064319956, 1073740802,   74476431, 1073737743,    4191235, 1069550588, 1044354149,    7343094,    1049599,
            1066406902, 1054845008,   16788441, 1070599164, 1063263216, 1065335867,   26233786, 1066405880, 1060119529,
            3134499,   36728730, 1061164021, 1056975844,   14674949,   47222651, 1056971762, 1053832158,   28317671,
            1060095032, 1051729904,    6289403,   43006916, 1065341993, 1046488045,    3145722,   57696160, 1069540378,
            4194289,       3065, 1051699282, 1073738761,    1051635, 1067454456, 1059043393,    4198388, 1070600182,
            1061164024, 1067437103,    9447389, 1062211576, 1054872568,    2088987,   15745990, 1054871547, 1048582136,
            10482691,   22043567, 1046482942, 1041242105,   19929066,   27292567, 1038093314, 1034951673,   31470541,
            1067439145, 1025507329,    3144679,   41964465, 1069539357,        992,    1050603, 1057995840, 1070590993,
            4071,       5104, 1063241778, 1072692227, 1070602224, 1065358325, 1068488740,       5108, 1059066872,
            1055920123,    1042452,    2106340, 1047529473, 1046480897,    6290433,    4208596, 1035994122, 1035994119,
            11539437,    6309828, 1025506324, 1026555918,   18885592,    8412084, 1013969950,  998234112,   26231746,
            1041432, 1033861248, 1030714499, 1065339949, 1073737743, 1047498855, 1043303531, 1067440163, 1072691207,
            1062186060, 1056941139, 1069540376, 1070598142,    4180014, 1070579769, 1072690188, 1068504053,   20964361,
            11525146,          0, 1067458539,   39852002,   27263991,    3150833, 1066413026,   60834742,   45099983,
            6300643, 1064317913,   81818503,   65034149,    9450453, 1063272400, 1041206382,   83919738, 1072686106,
            5238789, 1052745816, 1039109231, 1071639571,    3143681, 1064286272, 1049600090, 1070593037, 1072695294,
            3133478, 1060090950, 1070595078, 1068502010,   16772103, 1070581807, 1068500990, 1064309751,   32511973,
            9430037, 1067454455, 1059067892,   49299391,   20973559, 1067457519, 1053826033,   66086807,   35661781,
            1066410983, 1049633774, 1047501915,   50351026,    3141638, 1044391916, 1056944201,   66089869,    1046532,
            5240817, 1066386485, 1047502939, 1070596098,    2098162,    2087967, 1054847050, 1066402816,       4085,
            12578820, 1063239736, 1063259134, 1066405879,   24123368, 1071633446, 1059065852, 1059065849,   36714440,
            6286352, 1054871547, 1050677245,   50354088,   15730679, 1050678266, 1042287616, 1054847049,   26223580,
            2095089, 1031799809, 1061142586,   36717503,    1050611, 1020263424, 1068486698,   47210402, 1071648759,
            1047518,    1041431, 1055896647, 1064308730,       2019,    8386562, 1061142585, 1056967678,       6123,
            16783339, 1066389547, 1049626626, 1064309748,   25178067, 1071636508, 1042285575, 1053822972,   33573817,
            3142667, 1024452610, 1042285574, 1062192183,    8391671, 1025464477, 1030750223, 1065340971,   15736803,
            1041199234, 1019213849, 1069539358,   22034381, 1057983591,  975157248, 1073736720,   29380536,    2074697,
            1026518157,    3145728, 1064290354,   20957224, 1041204340,    7345135, 1066390568,   40888322, 1054841946,
            12593117, 1068490782,   60823517, 1069529149,   17841100, 1071639570,   82853811,   12572701, 1068488740,
            1073739782, 1033859206,   30409719, 1069539355,    2100217, 1047496815,   50343884, 1070590994,    5250026,
            1061133400,   71326623, 1071642633,    7351260,    2077758,   93358960, 1071646719,   10501069,   16764962,
            1034911865, 1072698356, 1072685085,   32500738, 1046451299,       8169, 1071638551,   49288162, 1057991756,
            1059806, 1071640592,   67123135, 1070580788,    2092048, 1070594057, 1042253935,   10477592, 1073738764,
            1068498946, 1052744796,   24118263, 1071642631, 1068502010, 1063235656,   40905682, 1068498947, 1067456499,
            1033267,   57693099, 1065355262, 1067458539,   12572700,   74480515, 1063260153, 1066412003,   25161730,
            1043305573, 1061165045,    4189191,   37753831, 1052747858, 1059068912,    2094084,   51392458, 1061141567,
            3143675, 1073740803, 1050648664, 1071632426,    1049595, 1068498945, 1057992777,    8382483, 1071646716,
            1065355263, 1065336889,   18876407, 1065356285, 1061161981, 1073729576,   30418904, 1060113406, 1056968700,
            8381462,   44058552, 1053821951, 1052775418,   16774145,   56650648, 1048578049, 1048581113,   26218476,
            1051699281, 1040188416,    3141616,   35661782, 1057994817,    1046502,    2097138, 1059043392, 1064290354,
            2027,       3061, 1063240757, 1071635489, 1071650801, 1068503032, 1068486697,    5238797, 1063261175,
            1061161980, 1072685085,   12584951, 1053822974, 1052772352,    4189199,   20980703, 1044382725, 1045431301,
            9436161,   29375430, 1035993101, 1038091274,   13635570,   38819757, 1027602453, 1018159104,   19931106,
            1060092989, 1020218537, 1017072810, 1067439145, 1063242801, 1039100044, 1032807568, 1068489761, 1067440164,
            1056932974, 1049591925, 1070588954, 1071637527,    2073678, 1067424856, 1071639570,    2094088,   23053355,
            11515961, 1073738761,    5245944,   45081603,   31447062,          0,   10493926,   67114970,   50332657,
            2100215,   14692308,   90194862,   72362952,    4200431,   19940291, 1029661842,   93344670,    1043473,
            1068487720, 1044348025, 1026516113, 1073737742, 1069538336, 1060082783, 1040153723, 1071641610, 1069541399,
            2076740, 1053790307, 1070594055, 1070592014,   18861093, 1068476491, 1067450372, 1071643652,   36694018,
            9421873, 1065354240, 1071647737,   55579615,   25157651, 1064307710, 1072699374,   74464185,   40895475,
            1062211579,    1057763, 1038056570,   57681872,    2094072,    2110424, 1049596005,   75515821,    2097145,
            2091026, 1062184016, 1037009016, 1072696315,    1044494,    1031225, 1047499877, 1067453436, 1072690185,
            14668831, 1057989714, 1063259134, 1070595077,   29355010, 1069529150, 1058014209, 1066402816,   44045284,
            7327784, 1052771332, 1064307708,   58733509,   18868240, 1042280449, 1062212599, 1046451299,   31458293,
            1011822788, 1060116467, 1054843986,   44048345, 1032801446, 1058021358, 1064286273,   57687996, 1053780104,
            4190203,    1034286, 1046452319,    1016936,    2096123,   10477593, 1053796432,   23045190,       2044,
            20968449, 1062189121,   46123042, 1068502012,   31462378, 1069533233,   69201916, 1063259133,   43002832,
            4184095,   92279764, 1056967678, 1054846028,   13626380, 1022315688, 1050675200, 1061141567,   20973559,
            1039099022, 1044382720, 1067436081,   30415841, 1056930932, 1035993088, 1073731619,   39859147,    1021017,
            1044453,    6285331, 1055896646,   18853949,    1048552,   13629441, 1061142587,   37736478,       4078,
            19927023, 1065339951,   57667582, 1067455476,   27272156, 1070585891,   76550108, 1059065850, 1063241781,
            2090006, 1031761036, 1049626625, 1066389547,    6288392, 1045396599, 1040188425, 1069538338,   11536377,
            1060082785, 1031797777, 1072686103,   16783338, 1073719371,  998227968,    2093068,   23078875,   14662707,
            1011826871,    5241856, 1066389548,   30398490, 1029658779,    8392693, 1067440165,   46134271, 1047491709,
            11541480, 1069539358,   60821475, 1066374238, 1071636509, 1070589974, 1042253936,   12563517, 1071637528,
            1072689166, 1052743775,   33544216, 1070590994, 1073740805, 1063233614,   55575535, 1070593036,    1050620,
            1073723452,   78654404, 1070594054,    3150835,   11521065,  102782871, 1069547520,    5250026,   23060501,
            1021270174, 1069550586,    2091026,   34599936, 1037004933, 1070601205,    1043471,   45091818, 1051691116,
            2092037, 1072690188, 1051698260, 1067425874,    1046531, 1071642633, 1059041351,   10468405, 1072692227,
            1069546501, 1066384442,   28302357, 1068498946, 1066401794, 1073728557,   46138354, 1065354241, 1065355263,
            7329823,   65021900, 1062208513, 1063259132,   14673936,   84955046, 1058014209, 1062211578,   23066624,
            1031763077, 1053819904,    2092024,   30411760, 1043302512,    1045484,    2095096, 1061143608, 1055890523,
            1007,       2042, 1065339951, 1068478533,       5107, 1070599163, 1069536295,    8374316, 1067454455,
            1065356285, 1072684062,   22012945, 1060114428, 1060111360,    3139604,   35652596, 1053820929, 1054868482,
            7335946,   51389396, 1046478855, 1049625606,   11533312,   67126196, 1040186381, 1037035520,   15730679,
            1041206380, 1007624402, 1002381523, 1071636508, 1050647643, 1029651634, 1022311605, 1071637527, 1060089930,
            1051679889, 1043290263, 1072688147, 1069531191,    1014895, 1064268920, 1072689166,    5231652,   25140299,
            11506775, 1073738762,   15722510,   49267748,   34583605, 1073740805,   26215414,   75492347,   57661455,
            0,   37756893,  100668368,   81788904,    1050621,   49297347, 1017068726,  104867776,    2093055,
            1051699283, 1035950234, 1013924021,    1047551, 1057993797, 1054830718, 1030707355,       1023, 1064288312,
            1018977, 1047490690, 1071646719, 1070583850,   20950081, 1065322599, 1068500991,    3137563,   41928736,
            9413707, 1065354240,   10481674,   63959037,   28295214, 1063257089,   15730680,   84939736,   47176718,
            1059059712,   24124390, 1027562650,   67108845,  999228651,   31468499, 1042247811,   87039947, 1023354058,
            1061142585, 1057982571, 1025466518, 1048527017, 1064291376, 1073717330, 1039103105, 1072652423, 1067439143,
            16758840, 1052739692,   25133156, 1070587933,   34591772, 1066376278,   50307136, 1073736722,   51377150,
            7320639,   77579290,    3143687,   68161504,   23054375,  103803891,    6293499, 1037006974,   37741580,
            1010772170,   10490862, 1049594987,   53477361, 1031749806,   13639650, 1061133400,   68164565, 1052728465,
            1071635488, 1073721411, 1037009016, 1073706101, 1071637530,   12567598, 1047498855,   20942935, 1071638549,
            26205207, 1057988695,   42970168, 1070592015,   39842815, 1068478533,   64998425, 1070594057,   52431847,
            5227571,   87026680, 1070595075, 1046452322,   16765983, 1022315689, 1069549565, 1055892563,   28305418,
            1039098002, 1070600184, 1064285252,   38798325, 1055880314, 1070602226, 1073726516,   51386335, 1073712226,
            3139589,    9425956, 1048551514,   16753738,    2094084,   18867218, 1054846030,   34584624,    1047555,
            28308480, 1062189121,   53465110, 1070596098,   37751789, 1069532212,   71299068, 1066401793, 1056945222,
            3134502, 1033858184, 1063257089, 1062191163,   11526167, 1046446198, 1060111361, 1067436080,   18870280,
            1060081763, 1055917056, 1073730597,   26215416, 1073717327, 1051722752,    5234713,   34608104,   13612092,
            1043435,   11529229, 1060094012,   27248679,    1047533,   17823744, 1063241780,   41933843,       3056,
            23071731, 1067438123,   55570430, 1070601205, 1066389546, 1071634466, 1044353128, 1064308729, 1068488739,
            1041433, 1054841945, 1056967678, 1070587933,    5237775, 1064283211, 1049625604, 1072687126,    9435141,
            1073723452, 1043333130,    1044495,   13632507,   10471469, 1020251136,    4191240,   17829874,   20960286,
            996085986,    6290432, 1070586910,   31450126, 1018114242,    8390650, 1071637530,   41940991, 1040141474,
            1043470, 1071638549, 1055896647, 1063218304,    1045515, 1072688145, 1062190141,   12553309, 1073738761,
            1072690188, 1068483635,   36679736, 1072691207, 1073739783,    1036329,   62903312, 1071643652,    1047555,
            7329823,   88080358, 1069547523,       1023,   13624340,  114305979, 1068498945,    1050619,   20966409,
            1007628484, 1067451392,    2091008,   27261951, 1026509992,    1044465,    2094079, 1066390567, 1045390476,
            1047538,    1048575, 1069538337, 1064271983,       3061, 1072694271, 1072685083,   10460241, 1071648759,
            1069549567,    1042453,   31438897, 1066404858, 1067451392,    4189200,   52419599, 1062210558, 1064305665,
            7335946,   74448875, 1058014210, 1062208514,   10483716,   95429574, 1052770310, 1055912960,   13631487,
            1019170981,  993981691,  987691259,    1043463, 1034905742, 1020204248, 1011815642,    1044485, 1050639479,
            1046426804, 1035941049,    1046531, 1066374239, 1072649360, 1061114008,    1047553,    8367173,   26179691,
            11497590,    1047552,   25150506,   54500420,   37720146,          0,   42983437,   82821147,   63942701,
            1023,   60817391,  112192497,   90166279,          0,   77602768, 1005525210,  117439456,          0,
            1030713479, 1027552444, 1000283352,          0, 1043300468, 1050628253, 1021260988,          0, 1054839905,
            1073704062, 1042239648,          0, 1067427918,   23038046, 1063217283,          0,    6274105,   47163452,
            10454118,          0,   19910691,   71288858,   31432776,          0,   33548299,   95415286,   53460009,
            0,   47185907, 1017067706,   76535816,          0,   59774938, 1034899616,   98565096,          0,
            1042255977, 1053780102, 1013924021,          0, 1051696219, 1073709163, 1030706333,          0, 1060088908,
            18847824, 1047489670,          0, 1069530172,   38777908, 1065320558,          0,    4181036,   58706967,
            8362070,          0,   13622299,   79686650,   26192957,          0,   24112137, 1027562649,   44024867,
            0,   32506871, 1043296388,   61856777,          0,   42996708, 1057981550,   80739310,          0,
            1053798475, 1073715289, 1026516114,          0, 1059043393,   15707203, 1040152703,          0, 1065337910,
            31440940, 1053788268,          0, 1070583851,   47174677, 1067423833,          0,    2087967,   63959037,
            7318598,          0,    8382483, 1039106168,   20954162,          0,   14676999, 1050644584,   34590749,
            0,   19923962, 1062181975,   49275912,          0,   26218477, 1073720390,   62913523,          0,
            1065339949,   12565557, 1040156783,          0, 1067439143,   24103971, 1049598049,          0, 1069538336,
            36691985, 1059038290,          0, 1071637529,   48231422, 1069527108,          0, 1073736722, 1050648663,
            5226549,          0,    3141643, 1057991755,   15715366,          0,    5240836, 1066383423,   26205206,
            0,    6292477,    1033267,   36695046,          0,    9440246,    9424934,   47184887,          0,
            1042447,   17816601, 1052748876,          0,    1044493,   26208268, 1059043394,          0,    1045514,
            34600959, 1065336888,          0, 1072691208, 1061143607, 1071631406,          0, 1071643653, 1065339951,
            4183076,          0, 1070595075, 1070584871,   10477593,          0, 1068498946,    1039391,   17819663,
            0, 1067450368,    6284311,   24114180,          0, 1067452415,   10480655,   31457274,          0,
            1042417,   15725575, 1065340970,          0,    1046514,   20970495, 1068488740,          0,       1011,
            1072686103, 1070586910,          0,       4086, 1073735699, 1073734680,          0, 1068503033,    1043471,
            3139603,          0, 1064307708,    2093068,    6287373,          0, 1060111360,    3142664,    9434119,
            0, 1055917060,    4192261,   12580866,          0, 1043325952,    6290434,   14681084,          0,
            980346125,    6292479,    1043464,          0, 1006568682,    1044470,    1044486,          0, 1032791238,
            1046518,    1045508,          0, 1060062370,    1048566,    1046530,          0,   12544126,       2039,
            1047553,          0,   40863832, 1072696313,          0,          0,   69184560, 1070599162,       1023,
            0,   97506310, 1068500989,       1023,          0,  126877660, 1066402816,          0,          0,
            993986794,          0,          0,          0, 1016014027,          0,          0,          0, 1039089837,
            0,          0,          0, 1062165645,          0,          0,          0,   11499630,          0,
            0,          0,   34576461,          0,          0,          0,   58701867,          0,          0,
            0,   83875848,          0,          0,          0,  108002276,          0,          0,          0,
            1007628486,          0,          0,          0, 1025459373,          0,          0,          0, 1044339859,
            0,          0,          0, 1064268921,          0,          0,          0,    9407582,          0,
            0,          0,   29337666,          0,          0,          0,   49266726,          0,          0,
            0,   69196809,          0,          0,          0,   89127915,          0,          0,          0,
            1020220579,          0,          0,          0, 1035954318,          0,          0,          0, 1050638457,
            0,          0,          0, 1066372196,          0,          0,          0,    7315534,          0,
            0,          0,   23049271,          0,          0,          0,   39832608,          0,          0,
            0,   55566345,          0,          0,          0,   71302129,          0,          0,          0,
            1033861248,          0,          0,          0, 1045399664,          0,          0,          0, 1056937055,
            0,          0,          0, 1068475470,          0,          0,          0,    6272061,          0,
            0,          0,   17810476,          0,          0,          0,   30398490,          0,          0,
            0,   42985479,          0,          0,          0,   54524917,          0,          0,          0,
            1046453341,          0,          0,          0, 1054845009,          0,          0,          0, 1062188101,
            0,          0,          0, 1070578745,          0,          0,          0,    5228588,          0,
            0,          0,   13620256,          0,          0,          0,   22011923,          0,          0,
            0,   30404613,          0,          0,          0,   38797304,          0,          0,          0,
            1059045435,          0,          0,          0, 1063241779,          0,          0,          0, 1068486699,
            0,          0,          0, 1072683043,          0,          0,          0,    3137563,          0,
            0,          0,    8382483,          0,          0,          0,   13627403,          0,          0,
            0,   17822723,          0,          0,          0,   23068667,          0,          0,          0,
            1071637529,          0,          0,          0, 1072687125,          0,          0,          0, 1073736721,
            0,          0,          0,    1044493,          0,          0,          0,    2094090,          0,
            0,          0,    3143686,          0,          0,          0,    5241859,          0,          0,
            0,    6290433,          0,          0,          0,    7341054,          0,          0,          0,
            1042423,          0,          0,          0,    1045494,          0,          0,          0,    1047542,
            0,          0,          0,       1015,          0,          0,          0,       3064,          0,
            0,          0, 1071647738,          0,          0,          0, 1069550588,          0,          0,
            0, 1067452414,          0,          0,          0, 1065352192,          0,          0,          0,
        }
    },
};

#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */

#endif /* HY_S0603_CMOS_EX_H */
